Elusive $_SERVER['HTTP_X_REQUESTED_WITH'] dalam PHP
Permintaan AJAX telah tersebar di mana-mana di web dan melihat sama ada permintaan itu AJAX atau tidak boleh menjadi penting untuk mengoptimumkan pelaksanaan kod. Dalam PHP, secara konvensional disyorkan untuk menyemak kewujudan $_SERVER['HTTP_X_REQUESTED_WITH'].
Walau bagaimanapun, pembolehubah ini secara misteri tiada dalam dokumentasi PHP rasmi. Percubaan untuk mengaksesnya tidak mengembalikan apa-apa, menimbulkan keraguan pada ketersediaannya.
Menyingkap Pembolehubah Tersembunyi
Pada hakikatnya, pembolehubah dalam $_SERVER adalah luaran kepada PHP itu sendiri, disuntik oleh pelayan web. Pengepala X-Requested-With, yang menunjukkan permintaan AJAX, biasanya dihantar oleh rangka kerja utama.
Nota Peringatan
Manakala $_SERVER['HTTP_X_REQUESTED_WITH'] boleh menjadi penunjuk yang berguna, ia tidak boleh dipercayai secara universal. Sesetengah rangka kerja mungkin tidak selalu menghantar pengepala ini, meninggalkan anda dengan positif atau negatif palsu.
A Surefire Solution
Untuk kepastian mutlak, satu-satunya cara yang mudah untuk membezakan permintaan AJAX adalah untuk menentukan bendera tertentu (cth., pembolehubah GET) yang mengiringi permintaan dan menyemak kehadirannya pada halaman menerima.
Atas ialah kandungan terperinci Mengapakah $_SERVER[\'HTTP_X_REQUESTED_WITH\'] Hilang daripada Dokumentasi PHP, dan Bagaimana Saya Boleh Mengesan Permintaan AJAX dengan Amanah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!