Heim  >  Artikel  >  Was ist der Unterschied zwischen Post- und Get-Anfragen?

Was ist der Unterschied zwischen Post- und Get-Anfragen?

青灯夜游
青灯夜游Original
2023-02-03 11:23:1078536Durchsuche

Unterschiede: 1. Post-Anfragen sind sicherer; Post-Anfragen werden nicht als Teil der URL verwendet, werden nicht zwischengespeichert und nicht in Serverprotokollen und Browser-Browserdatensätzen gespeichert. Es wird zwischengespeichert. Die Daten werden nicht zwischengespeichert. 2. Die von der Post-Anfrage gesendeten Daten sind größer und die Get-Anfrage unterliegt einer URL-Längenbeschränkung. 3. Die Post-Anfrage kann mehr Datentypen senden, während die Get-Anfrage nur ASCII-Zeichen senden kann. 4. Die Methoden der Parameterübertragung sind unterschiedlich. 5. Get generiert ein TCP-Paket; Post generiert zwei.

Was ist der Unterschied zwischen Post- und Get-Anfragen?

Die Betriebsumgebung dieses Tutorials: Windows 10-System, Dell G3-Computer.

Abrufanforderung: Fordern Sie Daten von einer bestimmten Ressource an, die zum Abrufen von Daten verwendet werden und im Allgemeinen für Vorgänge wie Suchsortierung und -filterung verwendet werden.

Post-Anfrage: Senden Sie die zu verarbeitenden Daten an die angegebene Ressource, die zum Senden von Daten an den Server verwendet wird und im Allgemeinen zum Ändern und Schreiben von Daten verwendet wird.

Get-Anfragen und Post-Anfragen sind im Wesentlichen TCP-Links, es gibt keinen Unterschied. Aufgrund von HTTP-Vorschriften und Browser-/Servereinschränkungen weisen sie jedoch einige Unterschiede im Bewerbungsprozess auf.

Der Unterschied zwischen Post-Anfrage und Get-Anfrage

(1) Post-Anfrage ist sicherer (wird nicht als Teil der URL verwendet, wird nicht zwischengespeichert, in Serverprotokollen und Browser-Browseraufzeichnungen gespeichert). Get-Anfrage Wenn es sich um eine statische Ressource handelt, wird sie zwischengespeichert. Wenn es sich um Daten handelt, werden sie nicht zwischengespeichert Das Protokoll selbst schränkt es nicht ein und die Anforderungslängenbeschränkung wird vom Browser bestimmt.) Bestimmen und Einrichten mit dem Webserver (4) Die Parameterübergabemethoden sind unterschiedlich (Get-Anfrageparameter werden über die URL übergeben, Post-Anfrage fügt „Passed“ in den Anfragetext ein)

(5) Die Get-Anfrage generiert ein TCP-Datenpaket; die Post-Anfrage generiert zwei TCP-Datenpakete (z Bei der Get-Anfrage sendet der Browser den HTTP-Header und die Daten zusammen, und der Server antwortet mit 200, um die Daten zurückzugeben. Nach der Anfrage sendet der Browser zuerst den Header, der Server antwortet mit 100, und der Browser sendet dann Daten Der Server antwortet mit 200 Rückgabedaten.)

Hinweis: Beim Senden von POST gibt es keinen Expect-Header, und der Server sendet natürlich keine 100 weiter.

Post-Anfrageprozess:

(1) Der Browser fordert eine TCP-Verbindung an (erster Handshake) (2) Der Server stimmt einer TCP-Verbindung zu (zweiter Handshake) (3) Browser Bestätigen und senden der Post-Request-Header (der dritte Handshake, diese Nachricht ist relativ klein, daher sendet http zu diesem Zeitpunkt die ersten Daten)

(4) Der Server gibt eine 100 Continue-Antwort zurück

(5) Der Browser sendet Daten

( 6) Der Server gibt eine 200 OK-Antwort zurück

Der Prozess der Get-Anfrage:

(1) Der Browser fordert eine TCP-Verbindung an (erster Handshake) (2) Der Server stimmt dem Herstellen einer TCP-Verbindung zu ( Nein. Zweiter Handshake)(3) Der Browser bestätigt und sendet den Get-Request-Header und die Daten (beim dritten Handshake ist diese Nachricht relativ klein, daher sendet http zu diesem Zeitpunkt die ersten Daten)

(4) Der Server gibt eine 200 OK-Antwort zurück

Wenn die Netzwerkumgebung gut ist, kann der Zeitunterschied zwischen dem einmaligen Senden eines Pakets und dem zweimaligen Senden eines Pakets grundsätzlich ignoriert werden. Im Falle einer schlechten Netzwerkumgebung bietet TCP mit zwei Paketen große Vorteile bei der Überprüfung der Integrität von Datenpaketen.

Weitere Informationen zu diesem Thema finden Sie in der Spalte „FAQ

“!

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Post- und Get-Anfragen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn