Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Menyiarkan Data Borang sebagai \'application/x-www-form-urlencoded\' dengan API Ambil?

Bagaimana untuk Menyiarkan Data Borang sebagai \'application/x-www-form-urlencoded\' dengan API Ambil?

Barbara Streisand
Barbara Streisandasal
2024-11-03 05:28:02993semak imbas

How to Post Form Data as

Menyiarkan Data Borang dengan API Ambil

Apabila menggunakan antara muka FormData dalam API Ambil untuk menyiarkan data borang, adalah penting untuk memahami kelakuan lalainya. Secara lalai, ia menghantar data menggunakan format "multipart/form-data", yang tidak serasi dengan format "application/x-www-form-urlencoded".

Jika anda ingin menyiarkan data borang sebagai "application/x-www-form-urlencoded" menggunakan API Ambil, anda boleh ikuti langkah berikut:

  1. Tukar FormData kepada URLSearchParams: Gunakan gelung untuk mengulang objek FormData dan tambahkan setiap pasangan nilai kunci pada objek URLSearchParams.

    <code class="javascript">const data = new URLSearchParams();
    for (const pair of new FormData(formElement)) {
        data.append(pair[0], pair[1]);
    }</code>

    ATAU, gunakan kaedah percubaan:

    <code class="javascript">const data = new URLSearchParams(new FormData(formElement));</code>

    Nota: Pastikan anda penyemak imbas menyokong kaedah terakhir sebelum menggunakannya.

  2. Hantar data menggunakan API Ambil: Buat permintaan POST dengan badan ditetapkan pada objek URLSearchParams. Jangan nyatakan pengepala Jenis Kandungan, kerana lalainya ialah "application/x-www-form-urlencoded".

    <code class="javascript">fetch(url, {
        method: 'post',
        body: data,
    })
    .then(…);</code>

Atas ialah kandungan terperinci Bagaimana untuk Menyiarkan Data Borang sebagai \'application/x-www-form-urlencoded\' dengan API Ambil?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Strapi - MengapaArtikel seterusnya:Strapi - Mengapa