Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Membetulkan Ralat \'Minta Tajuk Medan Tidak Dibenarkan\' dalam Pemindahan Fail Silang Asal?

Bagaimana untuk Membetulkan Ralat \'Minta Tajuk Medan Tidak Dibenarkan\' dalam Pemindahan Fail Silang Asal?

DDD
DDDasal
2024-11-01 13:36:02174semak imbas

How to Fix

Menyelesaikan Ralat "Medan Pengepala Permintaan 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!

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