में अजाक्स अनुरोध की जांच करें मैं एक PHP स्क्रिप्ट में हूं और मैं यह जांचना चाहता हूं कि अनुरोध अजाक्स अनुरोध है या नहीं। (मूल रूप से इतनी के रूप में प्रत्यक्ष स्क्रिप्ट उपयोग की अनुमति नहीं करने के लिए, अजाक्स कॉल है कि अन्य की तुलना में ...)कोड इग्निटर
तो, मैं मुख्य index.php
फ़ाइल में कहीं IS_AJAX
को परिभाषित कर रहा हूँ:
define('IS_AJAX',
isset($_SERVER['HTTP_X_REQUESTED_WITH']) &&
strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest');
और फिर यह जाँच मेरी स्क्रिप्ट के शीर्ष पर:
if (!IS_AJAX) exit('No direct script access allowed');
जब से मैं CodeIgniter के लिए नया हूँ, मैं सच में यकीन नहीं है ...
- क्या ऐसी कोई अंतर्निहित कार्यक्षमता है?
- क्या कोई और ... इसे करने का शानदार तरीका है?
बढ़िया! मुझे पता था कि मुझे कुछ याद आ रहा है ... बहुत बहुत धन्यवाद, दोस्त! –
is_ajax_request() एक सुरक्षा उपाय नहीं है। ऐसा ही एक उत्तर है जहां 404 बदले में वापस आ गया है, जो एक भ्रामक छाप देने से बचा होगा। (HTTP/1.1 "यह स्थिति कोड आमतौर पर तब प्रयोग किया जाता है जब सर्वर यह प्रकट नहीं करना चाहता कि अनुरोध क्यों अस्वीकार कर दिया गया है, या जब कोई अन्य प्रतिक्रिया लागू नहीं होती है") http://stackoverflow.com/questions/6555652/controller- विधियों-जो-केवल-नाम-द्वारा-एजेक्स-मेक-प्राइवेट/8072539 # 8072539 – sourcejedi
मैं आमतौर पर फ़ाइल लोड करने के लिए लोड विधि का उपयोग करता हूं, मैं उन फ़ाइलों को सीधे लोड करने से कैसे रोकूं? –