Zum Hauptinhalt springen

So führen Sie eine POST-Anfrage aus: Eine Anleitung zum Erstellen einer Anfrage

Die POST-Anfrage ist eine der am häufigsten verwendeten Methoden des HTTP-Protokolls für die Datenübertragung. Im Gegensatz zu einer GET-Anfrage, die zum Abrufen von Daten verwendet wird, wird eine POST-Anfrage verwendet, um Daten an den Server zu senden. In diesem Tutorial erfahren Sie, wie Sie eine POST-Anfrage erstellen und Daten an den Server senden.

Bevor wir beginnen, wollen wir die grundlegenden Konzepte verstehen. Eine POST-Anfrage besteht aus zwei Teilen: dem Header und dem Anforderungstext. Der Anforderungsheader enthält Informationen über die Anforderung selbst, z. B. die Methode (POST), die URL des Servers, an den die Anforderung gesendet wird, sowie andere Parameter.

Der Anforderungstext enthält die Daten, die Sie an den Server senden möchten. Die Daten können als Parameter oder als JSON-Objekt verwendet werden. Parameter werden als Schlüssel-Wert–Paare übergeben, wobei Schlüssel der Name des Parameters und Wert der Wert des Parameters ist. Ein JSON-Objekt ist ein strukturiertes Dataset im JSON-Format.

Um eine POST-Anfrage auszuführen, müssen Sie also einen Anforderungstext erstellen, eine Methode (POST) und eine Server-URL angeben, diese Anforderung an den Server senden und die resultierende Antwort verarbeiten.

Wie führe ich eine POST-Anfrage aus

Um eine POST-Anforderung auszuführen, müssen Sie ein Formular mit der POST-Methode erstellen und im action-Attribut die URL des Servers angeben, an den die Daten gesendet werden sollen. Ein Formular kann verschiedene Eingabefelder enthalten, z. B. Textfelder, Dropdown-Listen oder Optionsfelder.

Beispielformular zum Ausführen einer POST-Anfrage:

 

In diesem Beispiel enthält das Formular zwei Felder: "Name" und "E-Mail". Wenn der Benutzer die Felder ausfüllt und auf die Schaltfläche Senden klickt, werden die Daten aus dem Formular mithilfe der POST-Methode an den Server unter der angegebenen URL gesendet.

Auf der Serverseite können Sie die gesendeten Daten abrufen und entsprechend verarbeiten. Beispielsweise kann eine Webanwendung einen neuen Benutzer basierend auf den gesendeten Daten erstellen oder in einer Datenbank speichern.

Als Ergebnis einer POST-Anfrage kann der Server eine Antwort mit Informationen über eine durchgeführte Operation oder einen Fehler zurückgeben, wenn etwas schief gelaufen ist.

Auf diese Weise ermöglicht das Ausführen einer POST-Anfrage die Übertragung von Daten an den Server und die Interaktion mit der Webanwendung, wodurch sich zahlreiche Möglichkeiten zum Erstellen interaktiver und dynamischer Websites eröffnen.

Das Konzept der POST-Anfrage

POST-Anfragen werden häufig verwendet, um Informationen an einen Server zu senden, z. B. wenn Benutzer sich registrieren, Kommentare hinzufügen oder ein Formular auf einer Webseite senden.

Um eine POST-Anforderung auszuführen, müssen Sie die Methode "POST" im Anforderungsheader angeben. Die Daten werden je nach den Anforderungen der Anwendung als Parameter oder als JSON-Objekt im Anforderungstext übergeben. Im Header wird auch der Inhaltstyp angegeben, z. B. "application/x-www-form-urlencoded" oder "application/json".

POST-Anforderungen können asynchron sein, sodass Sie Daten an den Server senden können, ohne die Seite neu zu laden. Dazu wird häufig die AJAX-Technologie verwendet, mit der Sie mit dem Server interagieren können, ohne die Benutzeroberfläche zu blockieren.

Wie erstelle ich eine POST-Anfrage

Führen Sie die folgenden Schritte aus, um eine POST-Anfrage zu erstellen:

  1. Stellen Sie eine Verbindung mit dem Server her, an den die Anforderung gesendet wird.
  2. Generieren Sie Anforderungsheader, einschließlich Informationen über den Inhaltstyp, die Codierung und die Länge des Anforderungstexts.
  3. Erstellen Sie einen Anforderungstext, der die Daten enthält, die an den Server gesendet werden sollen. Die Daten können in verschiedenen Formaten dargestellt werden: Text, JSON, XML usw.
  4. Senden Sie eine Anfrage an den Server. Dazu wird die POST-Methode in Verbindung mit der Adresse der Ressource verwendet, an die die Anforderung gesendet wird.
  5. Warten Sie auf eine Antwort vom Server und verarbeiten Sie sie.
MethodeURLInhaltstypDer Anforderungstext
POSThttps://example.com/api/usersapplication/json

In diesem Beispiel wird eine Postanfrage an die Adresse ausgeführt https://example .com/api/users mit dem Inhaltstyp application/json . Im Anforderungstext werden Benutzerdaten im JSON-Format übergeben.

Nachdem die Anforderung an den Server gesendet wurde, wird sie gemäß der Anwendungslogik verarbeitet. Normalerweise gibt der Server eine Antwort zurück, die Informationen über die Ausführung eines Vorgangs oder einen Fehler enthält, falls ein solcher auftritt.

Durch das Erstellen einer POST-Anfrage können Sie also Daten an den Server senden und mit einer Remote-API oder Webanwendung interagieren.

Definieren von Abfrageparametern

Um Abfrageparameter zu definieren, müssen Sie diese im Abfragetext angeben. Jedes Schlüssel-Wert-Paar wird durch ein kaufmännisches und-Zeichen (&) getrennt. Zum Beispiel:

key1=value1&key2=value2&key3=value3

Parameterwerte müssen URL-codiert sein, damit sie ordnungsgemäß über das Netzwerk übertragen werden können. Dazu wird die Funktion verwendet encodeURIComponent() in JavaScript.

Abfrageparameter können als Objekt in verschiedenen Programmiersprachen übergeben werden. In PHP kann zum Beispiel eine Funktion verwendet werden http_build_query() um ein Array mit Parametern in eine Abfragezeichenfolge zu konvertieren.

Durch die Angabe von Abfrageparametern können Sie zusätzliche Informationen an den Server senden. Dies kann beispielsweise ein Benutzername und ein Kennwort für die Authentifizierung, Formulardaten oder Datenfiltereinstellungen sein.

Nachdem eine POST-Anforderung gesendet wurde, kann der Server die übergebenen Parameter verwenden, um die Anforderung zu bearbeiten und entsprechende Aktionen auszuführen. Je nach ausgewählter Programmiersprache werden spezielle Methoden und Funktionen für den Zugriff auf Abfrageparameter auf dem Server verwendet.

Festlegen von Kopfzeilen

Wenn Sie eine POST-Anforderung ausführen, müssen Sie bestimmte Header festlegen, um dem Server mitzuteilen, wie die gesendeten Daten verarbeitet werden sollen. Hier sind einige der gebräuchlichsten Header, die Sie verwenden können:

  1. Content-Type: Der Content-Type-Header wird verwendet, um den Inhaltstyp im Anforderungstext anzugeben. Um beispielsweise ein Formular mit Daten im JSON-Format zu senden, können Sie den Content-Type-Header-Wert auf application/json setzen.
  2. Content-Length: Der Content-Length-Header wird verwendet, um die Größe des Anforderungstexts in Bytes anzugeben. Es ist besonders nützlich, wenn Sie große Daten senden, damit der Server im Voraus weiß, wie viele Bytes zu erwarten sind.
  3. Authorization: Der Authorization-Header wird verwendet, um Anmeldeinformationen wie ein Autorisierungstoken oder einen Benutzernamen und ein Passwort zu übergeben. Es kann nützlich sein, wenn Sie auf geschützte Ressourcen zugreifen.
  4. User-Agent: Der User-Agent-Header wird verwendet, um die Clientanwendung oder den Browser und seine Versionen anzugeben, die die Anforderung ausführen. Dies kann dem Server helfen, je nach Client die richtigen Daten bereitzustellen.

Um diese Header in einer Anforderung festzulegen, können Sie API-Methoden verwenden, um mit den Headern Ihres HTTP-Clients oder Ihrer Programmiersprache zu arbeiten. Weitere Informationen zum Festlegen von Kopfzeilen in Ihrem speziellen Fall finden Sie in der Dokumentation Ihres Frameworks oder Tools.

Senden einer Anfrage

Um eine POST-Anforderung auszuführen, müssen Sie ein HTML-Formular erstellen und die Daten an den Server senden. Dazu wird ein Tag verwendet.

Zunächst müssen Sie die zu verwendende Abfragemethode angeben. In diesem Fall verwenden wir die POST-Methode:

Geben Sie dann die Adresse an, an die die Anfrage gesendet werden soll. Diese Adresse wird im Attribut "action" des Tags angegeben :

Innerhalb des Formulars werden verschiedene Felder erstellt, die Daten enthalten, die an den Server gesendet werden sollen. Zum Beispiel ein Texteingabefeld:

In diesem Beispiel hat das Feld das Attribut "name", das als Feldbezeichner auf dem Server verwendet wird.

Sie können auch andere Feldtypen hinzufügen, z. B. ein Passwort-Eingabefeld:

Nachdem Sie alle Felder erstellt haben, fügen Sie eine Schaltfläche hinzu, mit der das Formular an den Server gesendet wird:

Nachdem Sie alle Felder ausgefüllt und auf die Schaltfläche "Senden" geklickt haben, werden die Daten mithilfe der POST-Methode an den Server an der angegebenen Adresse gesendet.

Es ist wichtig zu beachten, dass die über eine Postanfrage gesendeten Daten für den Benutzer unsichtbar sind, da sie nicht in der Adressleiste des Browsers angezeigt werden.

Als Ergebnis einer POST-Anforderung empfängt der Server die Daten und führt die erforderlichen Vorgänge aus.

Das Senden einer Postanfrage im HTML-Format erfolgt daher über ein Tag, das die Methode "POST" und die Adresse angibt, an die die Anfrage gesendet werden soll. Als nächstes werden Eingabefelder und eine Schaltfläche zum Senden des Formulars an den Server hinzugefügt.

Empfangen und Verarbeiten einer Antwort

Nachdem wir eine POST-Anfrage an den Server gesendet haben, erwarten wir eine Antwort von ihm. Um eine Antwort zu erhalten und weiter zu verarbeiten, müssen wir Code verwenden.

Eine der beliebtesten Möglichkeiten, eine Antwort zu erhalten, ist die Verwendung von AJAX (Asynchrones JavaScript und XML). Mit AJAX können Sie Anfragen an den Server senden und die empfangenen Antworten verarbeiten, ohne die Seite neu zu laden.

Zunächst müssen wir ein XMLHttpRequest-Objekt erstellen:

var xhr = new XMLHttpRequest();

Dann können wir eine Callback-Funktion festlegen, um die Antwort zu verarbeiten:

xhr.onreadystatechange = function()  >;

Als nächstes können wir unsere POST-Anfrage an den Server senden:

xhr.open("POST", "url-сервера", true);xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");xhr.send("параметры=запроса");

In der Callback-Funktion können wir die empfangene Antwort vom Server verarbeiten. Zum Beispiel:

xhr.onreadystatechange = function() >;

Die Antwortverarbeitung kann die Anzeige von Daten auf einer Seite umfassen, je nach erhaltenen Daten zusätzliche Aktionen ausführen und andere Aktionen ausführen, die für die erfolgreiche Verarbeitung der Antwort erforderlich sind.

Abhängig von den spezifischen Anforderungen und Implementierungsmerkmalen können andere Methoden verwendet werden, um eine Antwort nach der Ausführung einer Postanforderung zu erhalten und zu verarbeiten.