Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mencegah Akses Terus ke Fail yang Dipanggil oleh Ajax?
Cara Mengehadkan Akses Terus kepada Fail yang Dipanggil oleh Ajax
Apabila menggunakan Ajax untuk menggunakan kod PHP, seperti yang digambarkan dalam pertanyaan, data dihantar boleh terdedah kepada pendedahan melalui pemeriksaan pengepala permintaan. Walaupun data mungkin tidak sulit, potensinya untuk eksploitasi kekal.
Untuk menangani kebimbangan ini, penyelesaian biasa melibatkan penggunaan pengepala HTTP_X_REQUESTED_WITH. Pengepala ini, biasanya ditetapkan oleh permintaan/rangka kerja Ajax, membolehkan pembezaan antara permintaan Ajax dan bukan Ajax. Coretan kod berikut mempamerkan pelaksanaannya:
if (isset($_SERVER['HTTP_X_REQUESTED_WITH']) && ($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest')) { // Allow access within Ajax requests } else { // Block access outside of Ajax requests }
Dalam kod Javascript, anda boleh menetapkan pengepala ini secara manual:
var xhrobj = new XMLHttpRequest(); xhrobj.setRequestHeader("X-Requested-With", "XMLHttpRequest");
Atas ialah kandungan terperinci Bagaimana untuk Mencegah Akses Terus ke Fail yang Dipanggil oleh Ajax?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!