Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana untuk Menghantar Data kepada Perkhidmatan dalam Axios dengan FormData?

Bagaimana untuk Menghantar Data kepada Perkhidmatan dalam Axios dengan FormData?

DDD
DDDasal
2024-11-04 04:48:02751semak imbas

How to Pass Data to Services in Axios with FormData?

Mengirim Data kepada Perkhidmatan dalam Axios

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>

Mengendalikan FormData dalam Node.js

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>

Kesimpulan

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!

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