كيفية تقييد الوصول المباشر إلى الملفات التي يستدعيها Ajax
عند استخدام Ajax لاستدعاء كود PHP، كما هو موضح في الاستعلام، فإن البيانات يمكن أن يكون الإرسال عرضة للتعرض من خلال فحص رؤوس الطلبات. على الرغم من أن البيانات قد لا تكون سرية، إلا أن احتمال استغلالها يظل قائمًا.
ولمعالجة هذه المشكلة، يتضمن الحل الشائع استخدام رأس HTTP_X_REQUESTED_WITH. يتيح هذا الرأس، الذي يتم تعيينه عادةً بواسطة طلبات/أطر عمل Ajax، التمييز بين طلبات Ajax والطلبات غير التابعة لـ Ajax. يعرض مقتطف الكود التالي تنفيذه:
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 }
في كود Javascript، يمكنك تعيين هذا الرأس يدويًا:
var xhrobj = new XMLHttpRequest(); xhrobj.setRequestHeader("X-Requested-With", "XMLHttpRequest");
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3