In B/S -Anwendungen wird die Dateninteraktion zwischen der Vorderseite und dem Backend über das Formularformular in HTML abgeschlossen. Das Formular bietet zwei Möglichkeiten zur Datenübertragung - Get and Post. Obwohl sie beidseitig Daten sind, sind sie in der Tat sehr unterschiedlich, wenn sie tatsächlich übertragen werden, und haben möglicherweise schwerwiegende Auswirkungen auf die Daten. Obwohl der Webcontainer einige Unterschiede zwischen den beiden blockiert hat, um den Erwerb von Variablenwerten zu erleichtern, ist es hilfreich, die Unterschiede zwischen den beiden in der zukünftigen Programmierung zu verstehen.
Die GET- und Post -Methoden in Form entsprechen den GET- und Post -Methoden im HTTP -Protokoll während der Datenübertragung. Die Hauptunterschiede zwischen den beiden sind wie folgt:
1. Get wird verwendet, um Daten vom Server zu erhalten, während Post zum Übergeben von Daten an den Server verwendet wird.
2. GET fügt die Daten im Formular zur URL hinzu, auf die durch die Aktion im Formular variablen = Wert und die beiden "verwendet werden"? Verbinden, während das "&" mit jeder Variablen verbunden ist; Post soll die Daten in der Form in der Datenbehörde platzieren und sie an die URL weitergeben, auf die die Aktion in der Art und Weise wie die Variable und den Wert dem Wert entspricht.
3. Get ist nicht sicher, da während des Übertragungsprozesses Daten in die angeforderte URL eingereicht werden. Heutzutage zeichnen viele vorhandene Server, Proxy -Server oder Benutzeragenten die angeforderte URL in der Protokolldatei auf und platzieren sie dann irgendwo, damit einige Datenschutzinformationen von Dritten angezeigt werden. Darüber hinaus können Benutzer die übermittelten Daten im Browser direkt sehen, und einige interne Systemnachrichten werden vor dem Benutzer angezeigt. Alle Operationen von Post sind für den Benutzer unsichtbar.
V. und Post kann eine große Datenmenge übertragen, sodass Sie beim Hochladen von Dateien nur Post verwenden können (natürlich gibt es einen weiteren Grund, der später erwähnt wird).
5. Beschränken Sie den Wert des Datensatzes von Formularen als ASCII -Zeichen. Während Post den gesamten ISO10646 -Zeichensatz unterstützt.
6. Get ist die Standardmethode des Formulars.
Um zusammenzufassen:
Methode abrufen: Übergeben Sie Datenparameter in der URL -Zeichenfolge selbst und können direkt von der Variablen "query_string" auf der Serverseite gelesen werden. Es ist effizient, fehlt jedoch die Sicherheit und kann komplexe Daten nicht verarbeiten (es kann nur Zeichenfolgen sein, beispielsweise in Servlet/JSP, es kann keine Java -Funktionen wie Vektor verarbeiten).
Post -Methode: In Bezug auf die Übertragungsmethode werden die Parameter im Datagramm verpackt und übertragen und aus der Umgebungsvariablen content_length gelesen, die für die Übertragung größerer Daten geeignet ist. Gleichzeitig ist die Sicherheit relativ hoch, da die Daten nicht in der Adressleiste des Browsers freigelegt sind, eine solche Verarbeitungseffizienz wird jedoch beeinträchtigt.