Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen

Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen

WBOY
WBOYnach vorne
2022-05-31 11:39:582196Durchsuche

Dieser Artikel vermittelt Ihnen relevantes Wissen über Python, das hauptsächlich Probleme im Zusammenhang mit dem HTTP-Protokoll in die notwendige Grundlage für Schnittstellenautomatisierungstests einführt. Ich hoffe, es wird für alle hilfreich sein.

Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen

Empfohlenes Lernen: Python-Video-Tutorial

HTTP-Protokoll und -Eigenschaften

Wenn Sie das HTTP-Protokoll als Person vergleichen und diese Person gründlich verstehen möchten, werden Sie auf jeden Fall zuerst die Persönlichkeit der anderen Person verstehen Eigenschaften warten. Was sind also die Merkmale des HTTP-Protokolls? Im Allgemeinen verfügt es über die folgenden Funktionen:

  • 1 Die erste Funktion: HTTP-Protokoll unterstützt den Client/Server-Modus, da das HTTP-Protokoll ein Mitglied des TCP- und IP-Protokolls ist suites Ein Mitglied wird wie andere Mitglieder für die Kommunikation zwischen dem Client und dem Server verwendet. Die Funktionsweise des Client/Server-Modus besteht darin, dass der Client eine Anfrage an den Server sendet Der Server antwortet. Ein Dienst, der alle HTTP-Anfragen anfordert und die Kommunikation vom Client herstellt, und der Server sendet keine Antwort, bevor er eine Client-Anfrage empfängt das HTTP-Protokoll.
HTTP协议支持 客户/服务端 模式;因为 HTTP 协议 是 TCP、IP 协议簇的一员,与其他成员一样 ,用于客户端与服务器之间的通信;而 客户/服务器模式 的工作方式是由客户端向服务器发出请求,服务器端响应请求,并进行响应的服务;所有的 HTTP请求 都是从客户端开始建立通信,服务器端在没有接收到任何的客户端请求之前是不会发出响应的;这就是 HTTP协议 的特点之一

Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen


  • 2、第二个特点:简单快速 ;客户端向服务器请求服务的时候,只需要传入请求的方法和路径;常用的请求方法有 GET、HEAD、POST(除了这三种之外,还有其他不那么常用的方法,有兴趣的小伙伴可以在 HTTP协议状态及报文组成 一文进行拓展);由于 HTTP协议 简单,使得 HTTP服务器的程序规模小,因而通信速度很快。

  • 3、第三个特点:灵活 ;之所以灵活是因为 HTTP 允许传输任意类型的数据对象;传输的类型由 Content-Type 加以标记内容类型,支持多种内容格式的传输。(兼容性很强)

  • 4、第四个特点:无连接;这里的无连接可不是没有连接的意思,而是限制每个连接只处理一个请求。服务器处理完客户端的请求并收到客户端的应答之后,就断开连接。采用如此的设计方式呢,能够节省传输时间。
    • 拓展:可能有同学认为一个页面有很多个 HTTP 请求,来回这样连接、断开会效率很低。其实早期这么做的原因是因为产生于互联网,因此服务器需要处理同时面向全世界 数十万、上百万 的网页访问。但是每个客户端(或者说浏览器)与服务器之间交换数据的间歇性特别大,所以 HTTP 的传输是具备突发性与顺时性的,大部分通道实际上会很空闲,无端的占用资源比较浪费。因此呢, HTTP 的设计者有意使用这样的特点将协议设计为 请求的时候建立连接,请求完就释放连接。 尽快的将资源释放出来服务给其他的客户端,无论怎样,对于同一个客户端来说,还是每一次只处理一个请求,所以我们也能看出来 HTTP 协议的另外一个优点,它很专一。(*^▽^*)

  • 5、最后一个特点:无状态; 无状态的意思就是说 HTTP协议对于事务的处理没有记忆能力 ;缺少状态就意味着如果后续处理需要前面的信息,则必须要重传,这就很可能会导致每次连接传送的数据量增大。另一方面,在服务器不需要先前的信息时它的响应就比较快。

PS:所以 HTTP 的这些特性是既有优点也有缺点。

  • 优点:优点在于解放服务器,每一次请求点到为止不会造成不必要的连接占用。
  • 缺点:缺点在于每一次请求都会传输大量的重复内容信息。
  • 所以保持 HTTP 连接的两种技术就应运而生了,那就是 cookiesession

 HTTP的请求与响应

现在我们知道 HTTP协议 是一种请求与响应的模式,那么就来一起认识一下 HTTP的请求和响应吧,先从 HTTP协议的请求说起。

 HTTP的请求

请求 是发送给接口的数据对象,包括接口的地址(也就是常说的 URL


Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen

Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen

🎜2. Die zweite Funktion: Einfach und schnell: Wenn der Client einen Dienst vom Server anfordert, muss er nur die häufig verwendete Anforderungsmethode übergeben sind GET, HEAD, POST (Zusätzlich zu diesen drei gibt es noch andere, weniger häufig verwendete Methoden. Interessierte Freunde können den Artikel zum HTTP-Protokollstatus und zur Nachrichtenzusammensetzung erweitern, da das HTTP-Protokoll einfach ist.) Dadurch wird die Programmgröße des HTTP-Servers klein gemacht, sodass die Kommunikationsgeschwindigkeit sehr hoch ist. 🎜🎜🎜3. Die dritte Funktion: Flexibel; Der Grund, warum es flexibel ist, ist, dass HTTP die Übertragung jeder Art von Datenobjekt ermöglicht; by Content-Type markiert den Inhaltstyp und unterstützt die Übertragung mehrerer Inhaltsformate. (Starke Kompatibilität) 🎜🎜🎜4. Das vierte Merkmal: Keine Verbindung; verbindungslos bedeutet hier nicht keine Verbindung, sondern beschränkt jede Verbindung auf die Verarbeitung nur einer Anfrage. Nachdem der Server die Anfrage des Clients verarbeitet und die Antwort des Clients empfangen hat, wird die Verbindung getrennt. Durch die Übernahme einer solchen Entwurfsmethode kann Übertragungszeit eingespart werden. 🎜🎜Erweiterung: Einige Schüler denken vielleicht, dass eine Seite viele HTTP-Anfragen hat und ein solches Herstellen und Trennen der Verbindung sehr ineffizient ist. Tatsächlich lag der Grund dafür in der Anfangszeit darin, dass es seinen Ursprung im Internet hatte und der Server Hunderttausende oder Millionen von Webseitenbesuchen aus der ganzen Welt gleichzeitig verarbeiten musste. Der Datenaustausch zwischen jedem Client (oder Browser) und dem Server ist jedoch sehr zeitweise, sodass die HTTP-Übertragung stoßweise und zeitnah erfolgt. Die meisten Kanäle sind tatsächlich ohne Grund inaktiv und werden relativ verschwendet. Daher haben die Entwickler von HTTP diese Funktion absichtlich verwendet, um das Protokoll so zu gestalten, dass eine Verbindung hergestellt wird, wenn angefordert wird, und die Verbindung freigegeben wird, nachdem die Anforderung abgeschlossen ist. Geben Sie Ressourcen so schnell wie möglich frei, um andere Clients zu bedienen. Unabhängig davon wird jeweils nur eine Anfrage verarbeitet, sodass wir auch einen weiteren Vorteil des HTTP-Protokolls erkennen können sehr spezifisch. (*^▽^*)🎜🎜🎜5. Die letzte Funktion: zustandslos bedeutet HTTP-Protokoll Es gibt keinen Speicher für Transaktionsverarbeitung; das Fehlen eines Status bedeutet, dass, wenn für die nachfolgende Verarbeitung vorherige Informationen erforderlich sind, diese erneut übertragen werden müssen, was wahrscheinlich die Menge der pro Verbindung übertragenen Daten erhöht. Andererseits reagiert der Server schneller, wenn er keine vorherigen Informationen benötigt. 🎜🎜PS: Diese Funktionen von HTTP haben also sowohl Vor- als auch Nachteile. 🎜🎜🎜Vorteile: Der Vorteil besteht darin, den Server zu entlasten und jeder Anforderungspunkt verursacht keine unnötige Verbindungsbelegung. 🎜Nachteil: Der Nachteil besteht darin, dass bei jeder Anfrage eine große Menge an Duplicate-Content-Informationen übermittelt wird. 🎜So entstanden zwei Technologien zur Aufrechterhaltung von HTTP-Verbindungen, nämlich cookie und session. 🎜 HTTP-Anfrage und -Antwort🎜🎜Jetzt wissen wir, dass das HTTP-Protokoll ein Anfrage- und Antwortmodus ist, also lernen wir etwas über HTTP-Anfragen und -Antworten. Beginnen wir mit HTTP Bitte um Einigung. 🎜

HTTP-Anfrage

🎜Anfrage ist ein an die Schnittstelle gesendetes Datenobjekt, einschließlich der Adresse der Schnittstelle (auch bekannt als URL), der angefordert wird Methoden (Abrufen, Posten ...), Parameter, Anforderungsheader (Header), Cookies, Daten usw. Siehe das Bild unten: 🎜🎜🎜🎜🎜

Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen


Der Inhalt der Nachricht im Bild oben ist die typische Post- und Get-Request-Nachricht des HTTP-Protokolls (Ignorieren Sie den Anforderungstext der Get-Request-Nachricht, das habe ich mir ausgedacht.) :忽略get请求报文的请求体,那是我瞎编的 。):

  • 1、第一行就是请求行,包含有请求方法、请求URI、HTTP协议及版本(与第二行的 host属性 相结合形成了完整的 请求URL )

  • 2、中间的部分就是报文头,包含有若干个属性;格式就是图中的 属性名:属性值 这样的格式。服务端根据报文头来获取客户端的信息。

  • 3、最下面的部分就是报文体,报文体与报文头之间必须有一个空行。在类似图中这样一个 post 请求里面将页面表单里的组件值通过 name=admin&passwd=123456 这样类似的键值对的格式编码形成这样的格式化串,承载多个请求参数的数据。(不仅仅是报文体可以传输数据,请求的 URL 在 get 请求方法的时候也是支持传递参数的。)


在这里可以看出主要的信息是通过请求的方法、url、与报文的主体来进行传递的。这也是 HTTP 的特征之一,简单快速,同时也会发现报文头里也包含有很多种信息,这些做一个了解即可。参考 HTTP协议状态及报文组成 文末的请求头报文。


 HTTP的响应

熟悉了 HTTP 的请求,再来看一下响应。见下图:


Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen

可以从响应报文的样式看出,与请求的报文比较相像,他也分为三个部分:请求行对应响应行、请求头对应响应头、请求体对应着响应体。

  • 1、响应行分为两部分:报文协议版本及响应状态码。
  • 2、响应头也分为服务器类型、相应数据类型响应时间等多个参数。
  • 3、响应体就是我们真正想要的干货,就是请求的最终返回内容。主要针对这个内容进行解析,比如说请求的是一个页面,这个时候请求的返回就是一个比较大的 HTML

 HTTP请求方法剖析

更多内容参考 HTTP协议状态及报文组成 一文的 HTTP请求方法

 GET 方法

GET方法 用来请求访问已被 URI 识别的资源,指定的资源经服务器端解析后返回响应内容。(见下图)


Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen


PSOT 方法

POST方法GET方法 功能类似,一般用来传输实体的主体;主要的目的不是为了获取响应主体的内容,是向 WEB服务器提供表单数据,尤其是大批量的数据

POST方法 其实是克服了 GET方法 的一些缺点,通过 POST 请求,数据就不是作为一个 URL 请求的一部分了,而是作为标准数据的格式来传递给 WEB服务器 这也就克服了 GET方法

  • 1. Die erste Zeile ist die Anforderungszeile, einschließlich der Anforderungsmethode, des Anforderungs-URI, des HTTP-Protokolls und der Version (kombiniert mit dem Host-Attribut in der zweiten Zeile, um a zu bilden vollständige Anforderungs-URL)
  • 2. Der mittlere Teil ist der Nachrichtenheader, der mehrere Attribute enthält; das Format ist der Attributname:Attributwert in der Abbildung. Der Server erhält Clientinformationen basierend auf dem Nachrichtenheader. Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen

  • 3. Der untere Teil ist der Nachrichtentext. Zwischen dem Nachrichtentext und dem Nachrichtenkopf muss eine Leerzeile stehen. In einer Post-Anfrage wie der in der Abbildung werden die Komponentenwerte im Seitenformular in einem ähnlichen Schlüssel-Wert-Paarformat wie name=admin&passwd=123456 codiert um dieses Format zu bilden, das Daten mehrerer Anforderungsparameter enthält. (Nicht nur der Nachrichtentext kann Daten übertragen, die angeforderte URL unterstützt auch die Übergabe von Parametern bei get request method.)

Die wichtigsten Punkte finden Sie hier. Die Informationen wird über die Anforderungsmethode, die URL und den Nachrichtentext weitergeleitet. Dies ist auch eine der Eigenschaften von HTTP. Gleichzeitig werden Sie feststellen, dass der Nachrichtenheader auch viele Informationen enthält. Informationen zum HTTP-Protokollstatus und zur Nachrichtenzusammensetzung finden Sie in der Anforderungsheadernachricht am Ende. 🎜
🎜

HTTP-Antwort

🎜Da Sie nun mit HTTP-Anfragen vertraut sind, werfen wir einen Blick auf die Antwort. Siehe das Bild unten: 🎜🎜🎜Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen🎜🎜 kann sein Von der Antwort aus gesehen ähnelt der Stil der Nachricht dem der Anforderungsnachricht. Er ist ebenfalls in drei Teile unterteilt: Die Anforderungszeile entspricht der Antwortzeile, der Anforderungsheader entspricht dem Antwortheader und der Anforderungstext an den Antworttext. 🎜
  • 1. Die Antwortzeile ist in zwei Teile unterteilt: Nachrichtenprotokollversion und Antwortstatuscode.
  • 2. Der Antwortheader ist auch in mehrere Parameter wie Servertyp, entsprechende Datentyp-Antwortzeit usw. unterteilt.
  • 3. Der Antworttext ist das, was wir wirklich wollen, nämlich den endgültigen Rückgabeinhalt der Anfrage. Dieser Inhalt wird hauptsächlich analysiert. Wenn beispielsweise eine Seite angefordert wird, ist die von der Anforderung zurückgegebene Antwort ein relativ großes HTML.
🎜

Analyse der HTTP-Anfragemethode

🎜Weitere Informationen finden Sie unter HTTP-Anfragemethode im Artikel HTTP-Protokollstatus und Nachrichtenzusammensetzung. 🎜

GET-Methode

🎜GET-Methode wird verwendet, um Zugriff auf Ressourcen anzufordern, die durch URI identifiziert wurden. Die angegebene Ressource wird vom Server analysiert und gibt den Antwortinhalt zurück. (Siehe Bild unten) 🎜🎜🎜Ausführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen🎜🎜

PSOT-Methode

🎜POST-Methode hat ähnliche Funktionen wie die GET-Methode und wird im Allgemeinen zum Übertragen des Hauptteils der Entität verwendet Inhalt des Antworttextes, aber Bereitstellung von Formulardaten an den WEB-Server, insbesondere große Datenmengen. 🎜🎜POST-Methode überwindet tatsächlich einige Mängel der GET-Methode. Durch die POST-Anfrage sind die Daten nicht Teil einer URL-Anfrage wird als Standarddatenformat an den WEB-Server übergeben. Dadurch werden die Nachteile der GET-Methode, dass die Daten nicht vertraulich behandelt werden können und die Datenmenge begrenzt ist, überwunden. 🎜🎜🎜🎜🎜🎜🎜Das Folgende ist eine Einführung in einige weniger häufig verwendete Methoden. 🎜

PUT-Methode

  • Die vom Client an den Server übertragenen Daten ersetzen den Inhalt des angegebenen Dokuments.
  • Der größte Unterschied zwischen der PUT-Methode und der POST-Methode besteht darin, dass PUT idempotent ist, während POST nicht idempotent ist. Daher verwenden wir häufiger die PUT-Methode, um Ressourcen zu übertragen. PUT方法用作传输资源。
  • 开启 PUT方法 需要控制权限,否则会造成一定的安全隐患,比如向服务器传输带有恶意 payload 的攻击脚本。

 HEAD 方法

  • HEAD方法 几乎与 GET 方法相同,只不过HEAD方法只请求消息报文头,返回的响应中没有具体的内容,用于获取报头。

 DELETE 方法

  • 请求服务器删除指定的资源,也就是删除文件。(一般服务器会控制此方法的权限,否则会造成重大的安全漏洞。)

OPTIONS 方法

  • 用来查询针对请求的 URI 指定的资源支持的方法,就是询问 请求的URL能够支持什么方法
  • Die Aktivierung der PUT-Methode erfordert die Kontrolle der Berechtigungen, andernfalls birgt sie bestimmte Sicherheitsrisiken, wie z. B. die Übertragung von Angriffsskripten mit bösartigen Payloads an den Server.

HEAD-MethodeAusführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen

HEAD-Methode ist fast dasselbe wie die GET-Methode, außer dass die HEAD-Methode nur den Nachrichtenkopf anfordert und gibt die Antwort zurück. Es gibt keinen spezifischen Inhalt in , der zum Abrufen des Headers verwendet wird.

DELETE-Methode
  • fordert den Server auf, die angegebene Ressource zu löschen, also die Datei zu löschen. (Im Allgemeinen kontrolliert der Server die Berechtigungen dieser Methode, andernfalls kommt es zu erheblichen Sicherheitslücken.)

OPTIONS-Methode

  • wird verwendet, um die Methode abzufragen, die von der durch den angeforderten URI angegebenen Ressource unterstützt wird um die -Anfrage zu stellen. Welche Methoden kann die URL unterstützen?.

Diese Methode wird in der Praxis selten verwendet. Im Sicherheitsbereich wird sie häufig von Angreifern und Penetrationstestingenieuren zum Sammeln von Informationen verwendet. Die


TRACE-Methode

  • wird verwendet, um vom Server empfangene Anforderungen zu echoen, hauptsächlich zu Test- oder Diagnosezwecken. (Nicht häufig verwendet)
  • wird häufig bei standortübergreifenden Angriffen im Sicherheitsbereich verwendet. Die
  • CONNECT-Methode

öffnet einen bidirektionalen Kommunikationskanal mit der vom Client angeforderten Ressource und wird daher häufiger zum Aufbau eines Tunnels verwendet. (Dies ist die Methode, die bei Verwendung eines Proxys verwendet wird) Wenn wir den Browser verwenden, um eine Anfrage an den Server zu stellen, auf dem sich die WEB-Seite befindet, wenn der Server erhält unsere Anfrage und reagiert auf die Situation. Der Browser empfängt die Webseite und zeigt sie an, und der Server, auf dem sich die Webseite befindet, gibt als Antwort auf unsere Anfrage im Browser einen Server-Header zurück, der einen HTTP-Statuscode enthält. Der englische Name des HTTP-Statuscodes ist HTTP Status Code. Im Folgenden sind gängige HTTP-Statuscodes aufgeführt: 301 – Die Ressource (Webseite usw.) wurde dauerhaft an eine andere URL übertragen. Klassifizierung Beschreibung1**Information: Der Server hat die Anfrage erhalten und der Anforderer muss fortfahren Führen Sie den Vorgang aus Fehler, die Anfrage enthielt einen Syntaxfehler oder die Anfrage konnte nicht abgeschlossen werden
Detaillierte Erläuterung des HTTP-Statuscodes HTTP-Statuscode
200 – Die Anfrage war erfolgreich.
404 – Die angeforderte Ressource (Webseite usw.) wurde nicht übertragen vorhanden 500 - Interner Serverfehler
HTTP-Statuscode-Klassifizierung
🎜5**🎜🎜Serverfehler, während der Server die Anfrage verarbeitete, ist ein Fehler aufgetreten🎜🎜🎜🎜

HTTP-Statuscodetabelle

302FoundTemporary move verwenden. Ähnlich wie 301. Die Ressource wird jedoch nur vorübergehend verschoben. Der Client sollte weiterhin den ursprünglichen URI303Siehe Andere verwenden, um andere Adressen anzuzeigen. Ähnlich wie 301. Verwenden Sie GET- und POST-Anfragen, um 304Not ModifiedUnmodified anzuzeigen. Die angeforderte Ressource wurde nicht geändert. Wenn der Server diesen Statuscode zurückgibt, wird keine Ressource zurückgegeben. Normalerweise Proxy verwenden. Auf die angeforderte Ressource muss über einen Proxy zugegriffen werden Der veraltete HTTP-Statuscode Temporäre Umleitung. Ähnlich wie 302. Mit GET-Anfrage weiterleitenDie Anfrage erfordert die Identitätsauthentifizierung des BenutzersFür zukünftige Verwendung reserviertDer Server versteht das Ich habe die Anfrage des Clients angefordert, mich aber geweigert, diese Anfrage auszuführen Vorbedingung fehlgeschlagenVorbedingungsfehler für Client-Anforderungsinformationen413Anforderungsentität zu großDer Server kann dies nicht verarbeiten, da die angeforderte Entität zu groß ist, sodass die Anforderung abgelehnt wird. Um kontinuierliche Anfragen vom Client zu verhindern, kann der Server die Verbindung schließen. Wenn der Server es nur vorübergehend nicht verarbeiten kann, enthält es eine Retry-After-Antwortnachricht Server kann es nicht verarbeiten. 415 503Dienst nicht verfügbarAufgrund von Überlastung oder Systemwartung , kann der Server die Anfrage des Clients vorübergehend nicht verarbeiten. Die Länge der Verzögerung kann in den Retry-After-Header-Informationen des Servers enthalten sein Zeit505HTTP-Version nicht unterstütztDer Server unterstützt die angeforderte HTTP-Protokollversion nicht und kann die Verarbeitung nicht abschließenPython-Video-Tutorial

Statuscode

Englischer Name
Chinesische Beschreibung
100 Weiter Weiter. Der Client sollte seine Anfrage
101 Switching Protocols Switching Protocols fortsetzen. Der Server wechselt die Protokolle basierend auf der Anfrage des Clients.
Sie können nur zu einem fortgeschritteneren Protokoll wechseln, zum Beispiel zu einer neuen Version des HTTP-Protokolls
200 OK Die Anfrage ist erfolgreich. Wird im Allgemeinen für GET- und POST-Anfragen verwendet
201 Erstellt wurde erstellt. Erfolgreich angefordert und eine neue Ressource erstellt
202 Akzeptiert Akzeptiert. Die Anfrage wurde angenommen, aber die Bearbeitung wurde noch nicht abgeschlossen
203 Nicht verbindliche Informationen Nicht autorisierte Informationen. Die Anfrage war erfolgreich. Die zurückgegebenen Metainformationen befinden sich jedoch nicht auf dem Originalserver, sondern in einer Kopie
204 Kein Inhalt Kein Inhalt. Der Server hat die Verarbeitung erfolgreich durchgeführt, es wurde jedoch kein Inhalt zurückgegeben. Stellt sicher, dass der Browser weiterhin das aktuelle Dokument anzeigt, ohne die Webseite zu aktualisieren
205 Inhalt zurücksetzen Inhalt zurücksetzen. Die Serververarbeitung ist erfolgreich und das Benutzerterminal (z. B. Browser) sollte die Dokumentansicht zurücksetzen.
Mit diesem Rückgabecode können Sie die Formularfelder des Browsers löschen
206 Teilinhalt Teilinhalt. Der Server hat einen Teil der GET-Anfrage erfolgreich verarbeitet
300 Multiple Choices Multiple Choices. Die angeforderte Ressource kann mehrere Standorte umfassen, und dementsprechend kann eine Liste mit Ressourcenmerkmalen und -adressen zurückgegeben werden
, damit das Benutzerterminal (z. B. Browser)
301 Permanent verschoben Permanent verschoben auswählen kann. Die angeforderte Ressource wurde dauerhaft auf den neuen URI verschoben, die Rückgabeinformationen enthalten den neuen URI und der Browser wird automatisch auf den neuen URI umgeleitet. Alle künftigen neuen Anfragen sollten den neuen URI anstelle von

Ressourcen, auf die zugegriffen wird, zwischenspeichern, indem sie einen Header bereitstellen, der angibt, dass der Client nur Ressourcen zurückgeben möchte, die nach einem bestimmten Datum geändert wurden
305 Proxy verwenden Proxy verwenden
306 Nicht verwendet
307 Temporäre Umleitung
401 Unautorisiert
402 Zahlung erforderlich
403 Verboten
404 Nicht gefunden
🎜Der Server kann die Ressource (Webseite) gemäß der Anfrage des Clients nicht finden. Mit diesem Code können Website-Designer 🎜Legen Sie eine personalisierte Seite für „Die von Ihnen angeforderte Ressource kann nicht gefunden“ fest
405 Methode nicht zulässig Die Methode in der Clientanforderung ist verboten
406 Nicht akzeptabel Der Server kann nicht basiert werden auf der Client-Anfrage Inhaltseigenschaften, um die Anfrage abzuschließen
407 Proxy-Authentifizierung erforderlich Die Anfrage erfordert eine Proxy-Authentifizierung, ähnlich wie 401, aber der Anforderer sollte den Proxy zur Autorisierung verwenden
408 Anfragezeit -out server Die Wartezeit für die vom Client gesendete Anfrage ist zu lang, Timeout
409 Konflikt Der Server gibt diesen Code möglicherweise zurück, wenn die PUT-Anfrage des Clients abgeschlossen wird. Bei der Verarbeitung durch den Server ist ein Konflikt aufgetreten die Anfrage
410 Gone Die vom Client angeforderte Ressource existiert nicht mehr. 410 unterscheidet sich von 404. Wenn die Ressource zuvor dauerhaft gelöscht wurde, können Sie den 410-Code verwenden.
Website-Designer können den neuen Speicherort der Ressource über den 301-Code angeben
417. Erwartung fehlgeschlagen unterstützen Sie den Antrag , und kann die Anfrage nicht abschließen
502 Bad Gateway Der Server, der als Gateway oder Proxy fungiert, hat eine ungültige Anfrage vom Remote-Server erhalten
Empfohlenes Lernen:

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung des http-Protokolls, der wesentlichen Grundlage für automatisierte Tests von Python-Schnittstellen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen