Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa Parameter Axios POST Tiada dalam $_POST: Isu Jenis Kandungan Tersembunyi?

Mengapa Parameter Axios POST Tiada dalam $_POST: Isu Jenis Kandungan Tersembunyi?

DDD
DDDasal
2024-10-23 00:09:30863semak imbas

Why Are Axios POST Parameters Missing in $_POST: The Hidden Content-Type Issue?

Axios POST Params Tidak Kelihatan dalam $_POST? Isu Jenis Kandungan Tersembunyi

Apabila bekerja dengan Axios untuk menyiarkan data, adalah penting untuk memahami kesan jenis kandungan. Secara lalai, Axios menyerikan objek JavaScript sebagai JSON, yang mungkin tidak serasi dengan tatasusunan $_POST sebelah pelayan anda.

Untuk memastikan parameter anda boleh diakses dalam $_POST, anda perlu menentukan jenis kandungan yang sesuai untuk permintaan anda. Menurut dokumentasi PHP, hanya dua jenis kandungan yang disokong: "application/x-www-form-urlencoded" dan "multipart/form-data."

Penyelesaian: Menentukan Jenis Kandungan

Untuk menyelesaikan isu ini, tetapkan pengepala "Jenis Kandungan" secara eksplisit kepada "application/x-www-form-urlencoded." Ini mengarahkan Axios untuk mengekod data anda dalam format yang serasi dengan $_POST:

<code class="javascript">axios({
    method: 'post',
    url,
    headers: { 'Content-Type': 'application/x-www-form-urlencoded' },
    data: {
        json,
        type,
    }   
})  </code>

Alternatif Tambahan

Sebagai alternatif, jika anda tidak mahu menukar jenis kandungan anda , anda boleh mengubah suai kod PHP anda untuk mengendalikan input JSON. Rujuk jawapan Stack Overflow berikut untuk panduan: [https://stackoverflow.com/questions/6787388/receiving-json-objects-as-post-parameters-in-php](https://stackoverflow.com/questions/ 6787388/receiving-json-objects-as-post-parameters-in-php)

Atas ialah kandungan terperinci Mengapa Parameter Axios POST Tiada dalam $_POST: Isu Jenis Kandungan Tersembunyi?. 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