Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Membetulkan Ralat \'Minta Tajuk Medan Tidak Dibenarkan\' dalam Pemindahan Fail Silang Asal?
Apabila cuba menghantar fail melalui permintaan POST, pembangun mungkin menghadapi ralat: " Medan pengepala permintaan Jenis Kandungan tidak dibenarkan oleh Access-Control-Allow-Headers." Ralat ini menunjukkan bahawa pelayan tidak membenarkan medan pengepala yang ditentukan.
Percubaan awal untuk menyelesaikan ralat ini dengan menambahkan pelbagai pengepala, termasuk "Access-Control-Allow-Origin" dan "Access-Control-Allow- Kaedah," mengakibatkan ralat baharu: "Meminta medan pengepala Access-Control-Allow-Origin tidak dibenarkan oleh Access-Control-Allow-Headers."
Menyiasat lebih lanjut, didapati bahawa dokumentasi jQuery memberi amaran menentang menetapkan jenis kandungan kepada apa-apa selain daripada "application/x-www-form-urlencoded," "multipart/form-data" atau "text/plain" untuk permintaan merentas domain. Jenis kandungan lalai Angular ialah "application/json," yang mencetuskan permintaan OPTIONS prapenerbangan ke pelayan.
Untuk menyelesaikan isu ini, anda boleh sama ada menulis ganti pengepala lalai Angular atau membenarkan Access-Control-Allow-Header pada hujung pelayan. Berikut ialah contoh mengatasi pengepala lalai Angular:
$http.post(url, data, { headers : { 'Content-Type' : 'application/x-www-form-urlencoded; charset=UTF-8' } });
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat \'Minta Tajuk Medan Tidak Dibenarkan\' dalam Pemindahan Fail Silang Asal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!