Heim >Web-Frontend >js-Tutorial >Wie sende ich Formulardaten mit der Fetch-API unter Verwendung von „application/x-www-form-urlencoded'?

Wie sende ich Formulardaten mit der Fetch-API unter Verwendung von „application/x-www-form-urlencoded'?

Linda Hamilton
Linda HamiltonOriginal
2024-11-03 18:30:29310Durchsuche

How to Send Form Data with Fetch API Using `application/x-www-form-urlencoded`?

Formulardaten mit der Fetch-API veröffentlichen

Das Bereitstellen von Formulardaten mit der Fetch-API nutzt
FormData, das von Natur aus das Multipart-/Formulardatenformat verwendet. Wenn Sie Daten mit „Content-Type“: „application/x-www-form-urlencoded“ senden möchten, gibt es zwei Optionen:

Erstellen eines URL-codierten Textkörpers:

<code class="js">fetch("api/xxx", {
    body: "[email protected]&password=pw",
    headers: {
        "Content-Type": "application/x-www-form-urlencoded"
    },
    method: "post"
})</code>

URLSearchParams verwenden:

Um ein URLSearchParams-Objekt aus einem Formularelement zu erstellen, können Sie die Elemente durchlaufen oder die folgende Konvertierungsmethode verwenden:

<code class="js">const data = new URLSearchParams(new FormData(formElement));
fetch("api/xxx", {
    method: 'post',
    body: data,
})</code>

Beachten Sie, dass die Definition eines Content-Type-Headers nicht erforderlich ist, wenn Sie URLSearchParams verwenden.

Multipart-/Formulardaten im Controller dekodieren:

Abhängig von Ihren Bei der Backend-Implementierung müssen Sie möglicherweise den Multipart-/Formulardatenkörper dekodieren. Spezifische Dekodierungsverfahren finden Sie in der Dokumentation Ihres gewünschten Frameworks.

Das obige ist der detaillierte Inhalt vonWie sende ich Formulardaten mit der Fetch-API unter Verwendung von „application/x-www-form-urlencoded'?. 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