“Origin null tidak dibenarkan oleh Access-Control-Allow-Origin” Ralat untuk Permintaan daripada file:// URL
Isu: Pembangun menghadapi masalah apabila membuat permintaan melalui sokongan AJAX jQuery daripada URL file:// ke Panoramio. Ralat "Origin null is not allowed by Access-Control-Allow-Origin" muncul dalam konsol.
Analisis Punca Punca:
-
Jenis Permintaan Tidak Betul: Permintaan GET harus menggunakan dataType "jsonp" atau menyertakan "callback=?" dalam URL untuk mendayakan JSONP, yang diperlukan untuk permintaan merentas domain.
-
Sekatan CORS untuk URL fail://: Pengepala perkongsian sumber silang (CORS) tidak boleh membenarkan permintaan daripada file:// URL dengan pengepala Asal nol melalui echo-back mekanisme.
Penyelesaian:
Untuk menyelesaikan isu tersebut, langkah berikut perlu:
-
Gunakan JSONP Permintaan: Gunakan $.getJSON atau tetapkan dataType kepada "jsonp" untuk $.get to trigger JSONP, yang mengubah suai jenis permintaan kepada "jsonp" jika "panggilan balik=?" terdapat dalam URL.
-
Elakkan URL file://: Pastikan ujian dijalankan melalui URL http:// kerana URL fail:// mempunyai sokongan CORS yang terhad.
Arahan Penyelesaian Masalah:
-
Sahkan Penggunaan JSONP: Pastikan $.get mempunyai dataType ditetapkan kepada jsonp atau $.getJSON sedang digunakan dengan "callback=?" dalam URL.
-
CORS untuk Permintaan Merentas Domain: Uji melalui http:// untuk mengelakkan sekatan CORS untuk URL file://. Sahkan bahawa penyemak imbas menyokong CORS, kerana Opera dan Internet Explorer telah menangguhkan pelaksanaan.
Atas ialah kandungan terperinci Mengapa Permintaan AJAX Saya daripada URL `file://` Mendapat Ralat 'Origin null is not allowed by Access-Control-Allow-Origin'?. 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