Parameter Axios POST Tidak Boleh Diakses dalam PHP
Dalam kod anda, anda menghantar permintaan POST menggunakan Axios dengan "application/x -www-form-urlencoded" jenis kandungan. Walau bagaimanapun, anda menghadapi isu di mana data POST tidak diisikan ke dalam tatasusunan $_POST atau $_REQUEST di sebelah PHP.
Punca masalah ini terletak pada format data POST. PHP menjangkakan data POST berada dalam format "application/x-www-form-urlencoded", yang merupakan format lalai untuk penyerahan borang HTML. Secara lalai, Axios menyerikan objek JavaScript kepada JSON, yang bukan format data yang disokong untuk $_POST.
Penyelesaian: Menggunakan URLSearchParams atau Pustaka qs
Untuk menyelesaikan isu ini , anda boleh menggunakan kaedah berikut untuk mengekod data POST dalam format yang betul:
<code class="javascript">const params = new URLSearchParams(); params.append('param1', 'value1'); params.append('param2', 'value2'); axios.post('/foo', params);</code>
<code class="javascript">const qs = require('qs'); axios.post('/foo', qs.stringify({ 'bar': 123 }));</code>
Sebagai alternatif, anda boleh mengubah suai PHP untuk mengendalikan JSON sebagai data POST:
Rujuk jawapan ini untuk mendapatkan butiran tentang cara mengkonfigurasi PHP untuk mengendalikan JSON sebagai format data untuk mengisi $_POST.
Atas ialah kandungan terperinci Bagaimana untuk Mengakses Parameter Axios POST dalam PHP Menggunakan Kaedah Berbeza?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!