Latar Belakang
Apabila menggunakan API Ambil untuk menghantar data borang, perkara biasa ditemui isu yang berkaitan dengan Jenis Kandungan dan sempadan yang digunakan semasa pengekodan data. Artikel ini meneroka sifat isu ini dan menyediakan penyelesaian untuk pengekodan berbilang bahagian/data-bentuk lwn. aplikasi/x-www-form-urlencoded.
FormData dan multipart/form-data
Seperti yang dinyatakan dalam dokumentasi FormData MDN, FormData secara tersirat mengekod data dalam format berbilang bahagian/data borang. Format ini tidak sesuai untuk menghantar data dengan Jenis Kandungan aplikasi/x-www-form-urlencoded.
Penyelesaian untuk aplikasi/x-www-form-urlencoded
Untuk mengekod data dalam format aplikasi/x-www-form-urlencoded, anda mempunyai dua pilihan:
Alternatif untuk URLSearchParams
Jika sokongan percubaan tersedia, anda juga boleh menghantar objek FormData terus ke URLSearchParams dan bukannya menambahkan nilai secara manual. Pendekatan ini masih dalam pembangunan dan harus diuji secara menyeluruh sebelum pelaksanaan.
Kesimpulan
Dengan memahami mekanik FormData dan gelagat Fetch API, pembangun boleh menghantar borang data dengan betul dalam format berbilang bahagian/form-data atau aplikasi/x-www-form-urlencoded, memastikan pemindahan dan pengendalian data yang betul pada bahagian pelayan.
Atas ialah kandungan terperinci Cara Menghantar Data Borang dengan API Ambil: Multipart/form-data vs. Application/x-www-form-urlencoded?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!