Rumah > Artikel > hujung hadapan web > Bagaimana untuk Menghantar Data kepada Perkhidmatan dalam Axios dengan FormData?
Apabila menghantar data daripada penyemak imbas, Axios secara automatik mengendalikan format badan permintaan tertentu dan menetapkan pengepala Jenis Kandungan yang sesuai. Jika anda ingin menghantar data sebagai data berbilang bahagian/bentuk dan mengkonfigurasi pengepala Jenis Kandungan secara manual, anda boleh berbuat demikian dengan menghantar contoh FormData sebagai badan permintaan. Axios akan secara automatik menetapkan pengepala kepada berbilang bahagian/data-bentuk; boundary=${form._boundary}.
<code class="javascript">import axios from 'axios'; const form = new FormData(); form.append('email', 'user@example.com'); form.append('password', 'secretpassword'); axios.post('user/login', form) .then((response) => { // Handle response }) .catch((error) => { // Handle error });</code>
Apabila menggunakan Axios dalam Node.js, ia tidak secara automatik menyimpulkan pengepala Jenis Kandungan daripada FormData contoh. Untuk mengatasi masalah ini, anda boleh menggunakan pemintas permintaan.
<code class="javascript">axios.interceptors.request.use((config) => { if (config.data instanceof FormData) { Object.assign(config.headers, config.data.getHeaders()); } return config; }, null, { synchronous: true });</code>
Atau, anda boleh menggabungkan secara manual dalam pengepala apabila membuat permintaan.
<code class="javascript">axios.post('user/login', body, { headers: { 'X-Any-Other-Headers': 'value', ...body.getHeaders(), }, });</code>
Kesimpulannya, dengan menggunakan contoh FormData dan mengkonfigurasi pilihan permintaan dengan sewajarnya, anda boleh menghantar data daripada loginService.js ke Services/index.js dan mengendalikan permintaan berbilang bahagian/form-data dengan lancar.
Atas ialah kandungan terperinci Bagaimana untuk Menghantar Data kepada Perkhidmatan dalam Axios dengan FormData?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!