409 Stimmen

Wann verwenden Sie POST und wann GET?

Soweit ich das beurteilen kann, gibt es drei Kategorien:

  1. Verwenden Sie niemals GET und verwenden POST
  2. Verwenden Sie niemals POST und verwenden GET
  3. Es spielt keine Rolle, welche Sie verwenden.

Liege ich mit der Annahme dieser drei Fälle richtig? Wenn ja, was sind einige Beispiele für jeden Fall?

3voto

cherouvim Punkte 31201

POST kann große Datenmengen übertragen, GET nicht.

Aber im Allgemeinen geht es nicht um eine Abkürzung von GET, sondern um eine Konvention, wenn Sie möchten, dass sich Ihre Website/Webapp gut verhält.

Werfen Sie einen Blick auf http://www.w3.org/2001/tag/doc/whenToUseGet.html

2voto

John Boker Punkte 80493

Ich verwende POST, wenn ich nicht möchte, dass die Leute den QueryString sehen, oder wenn der QueryString groß wird. Außerdem wird POST für Datei-Uploads benötigt.

Ich sehe kein Problem bei der Verwendung von GET, obwohl ich es für einfache Dinge verwende, bei denen es sinnvoll ist, die Dinge im QueryString zu halten.

Die Verwendung von GET ermöglicht die Verknüpfung mit einer bestimmten Seite auch dort, wo POST nicht funktionieren würde.

1voto

Chris Miller Punkte 4639

Ursprünglich war vorgesehen, dass GET für die Rückgabe von Daten und POST für alles andere verwendet wird. Als Faustregel gilt: Wenn ich etwas an den Server zurücksende, verwende ich POST. Wenn ich nur eine URL aufrufe, um Daten zurückzubekommen, verwende ich GET.

1voto

Gordon Punkte 304254

Lesen Sie die Artikel über HTTP in der Wikipedia . Dort wird erklärt, was das Protokoll ist und was es bewirkt:

GET

Fordert eine Darstellung der angegebenen Ressource an. Beachten Sie, dass GET nicht für Operationen verwendet werden sollte, die Nebeneffekte verursachen, wie z. B. die Verwendung für Aktionen in Webanwendungen. Ein Grund dafür ist, dass GET willkürlich von Robotern oder Crawlern verwendet werden kann, die keine Rücksicht auf die Nebeneffekte nehmen müssen, die eine Anfrage verursachen sollte.

y

POST Übermittlung von zu verarbeitenden Daten (z. B. aus einem HTML-Formular) an die angegebene Ressource. Die Daten werden in den Hauptteil der Anfrage aufgenommen. Dies kann zur Erstellung einer neuen Ressource oder zur Aktualisierung bestehender Ressourcen oder zu beidem führen.

Das W3C hat ein Dokument namens URIs, Adressierbarkeit und die Verwendung von HTTP GET und POST die erklärt, wann was zu verwenden ist. Zitieren von

1.3 Kurze Checkliste für die Wahl von HTTP GET oder POST

  • U
    • Die Interaktion ähnelt eher einer Frage (d. h. es handelt sich um eine sicherer Vorgang wie eine Abfrage, ein Lesevorgang oder ein Nachschlagen).

y

  • U
    • Die Interaktion gleicht eher einer Bestellung, oder
    • Die Interaktion verändert den Zustand der Ressource in einer Weise, die der Nutzer wahrnehmen würde (z. B. ein Abonnement für einen Dienst), oder o Der Nutzer wird für die Ergebnisse der Interaktion verantwortlich gemacht.

Vor der endgültigen Entscheidung, HTTP GET oder POST zu verwenden, sollten jedoch auch Überlegungen zum Schutz sensibler Daten und praktische Erwägungen berücksichtigt werden.

Ein praktisches Beispiel wäre, wenn Sie ein HTML-Formular abschicken. Sie geben entweder Beitrag o erhalten. für die Formularaktion. PHP wird $_GET und $_POST entsprechend auffüllen.

1voto

jellyfishtree Punkte 1751

In PHP, POST Das Datenlimit wird in der Regel von Ihrem php.ini . GET wird durch die Server-/Browser-Einstellungen begrenzt, glaube ich - normalerweise um 255 Bytes.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X