के साथ मैंने पढ़ा है कि AJAX अनुरोध के एक्स-अनुरोधित हेडर के साथ जांच करना यह सुनिश्चित करने का एक अच्छा तरीका है कि अनुरोध बाहर से नहीं आ रहा है। सर्वर की तरफ, मैं इस हेडर को कैसे देखूं? और इस हेडर की प्रतिक्रिया करने का सही तरीका क्या गुम या गलत है (रीडायरेक्ट, अपवाद फेंक दें, अन्य)?कैसे सर्वर साइट से नहीं AJAX अनुरोधों की जांच कर सकता है, एक्स-अनुरोधित-
उत्तर
आप इस तरह यह जांच कर सकते हैं ...
$isAjax = isset($_SERVER['HTTP_X_REQUESTED_WITH']) AND
strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) === 'xmlhttprequest';
आप एक्सएचआर के माध्यम से केवल उम्मीद पहुँच रहे हैं, तो सिर्फ exit
अगर यह शीर्ष लेख मौजूद नहीं है।
नोट: यह हेडर स्पूफ के लिए तुच्छ है। पर किसी भी चीज़ के लिए इस पर भरोसा न करें ऐसा लगता है कि यह na XHR से आया था।
मैं यह सुनिश्चित करने के लिए इसका उपयोग करना चाहता हूं कि अनुरोध नहीं आ रहा है किसी ऐसे व्यक्ति से जिसने मेरे जेएस कोड को देखा, यूआरएल लिया और मेरी साइट के बाहर से इनपुट जमा कर रहा है। तो अगर इसे फिक्र किया जा सकता है, तो इससे बचाने के लिए कोई रास्ता नहीं है? – zmol
@zmol मुझे खेद है, उस हेडर की उपस्थिति को देखकर कोई रास्ता नहीं है। – alex
लेकिन क्या अन्य तरीके हैं? यह इस हेडर के माध्यम से नहीं होना चाहिए। अंतिम लक्ष्य यह सुनिश्चित करना है कि अनुरोध जेएस कोड पढ़ने वाले किसी व्यक्ति से नहीं आ रहा है, AJAX यूआरएल लाइन पढ़ें, और बाहर से यूआरएल खेल रहा है :) – zmol
यह सुनिश्चित करने के लिए एकमात्र निश्चित तरीका है कि अनुरोध आपकी साइट से आया है और किसी और का नहीं, उपयोगकर्ता को एक अद्वितीय टोकन जारी करना और इसे अपने सत्र में संग्रहीत करना है। अपने कोड में जहां आप AJAX अनुरोध करते हैं, तो आपको इस टोकन को वापस पास करने की आवश्यकता होती है और यदि यह उनके सत्र में किसी से मेल खाता है तो आप सुनिश्चित कर सकते हैं कि अनुरोध आपकी साइट से आया है।
और जानकारी: http://en.wikipedia.org/wiki/Cross-site_request_forgery
- 1. AJAX अनुरोधों की सुरक्षा
- 2. AJAX अनुरोधों की विनम्र आवृत्ति?
- 3. jQuery थ्रॉटलिंग और AJAX अनुरोधों की कतार
- 4. सी # सत्र की जांच नहीं कर सकता है?
- 5. सर्वर-साइड AJAX अनुरोधों के लिए क्यूइंग तंत्र
- 6. मैं अपने वेब सर्वर पर एसएसएल भेद्यता की जांच कैसे कर सकता हूं?
- 7. फ़ायरबग कंसोल से AJAX अनुरोधों को कैसे छिपाना है?
- 8. AJAX अनुरोधों में अनधिकृत परिणाम
- 9. मैं सभी इंटरनेट अनुरोधों की निगरानी कैसे कर सकता हूं?
- 10. मैं कैसे जांच कर सकते हैं कि सर्वर सोप अनुरोध
- 11. AJAX पोस्ट की Jquery जांच सफलता
- 12. AJAX अनुरोधों में संबंधित यूआरएल
- 13. java.util.UUID.fromString लंबाई की जांच नहीं कर रहा
- 14. सफारी फॉर्म जमा करने के बाद AJAX अनुरोधों की अनुमति नहीं देता है?
- 15. आईओएस जांच नहीं कर सकता है, तो वस्तु रिक्त है
- 16. कैसे केवल कुकीज़ AJAX अनुरोधों के साथ काम करते हैं?
- 17. $ .ajax की प्रतिक्रिया 301 है, क्या मैं प्रोग्रामेटिक रूप से नया यूआरएल प्राप्त कर सकता हूं?
- 18. मेवेन की साइट पीढ़ी काम नहीं कर रही है
- 19. चैट के लिए कई AJAX अनुरोधों को कैसे कम करें?
- 20. यह जांच नहीं कर सकता कि int शून्य है
- 21. मैं प्रोग्रामिक रूप से यह निर्धारित कैसे कर सकता हूं कि आईआईएस साइट अनुरोध प्राप्त कर रही है या नहीं?
- 22. एक साथ, असिंक्रोनस AJAX अनुरोधों की एक उचित संख्या
- 23. ब्राउज़र पहले से ही अपने कैश का उपयोग पहले AJAX कॉल से नहीं कर सकता?
- 24. Jquery हालत की जांच है (': मंडराना') काम नहीं कर रहा
- 25. चेरीपी सर्वर बहुत से अनुरोधों पर घुमा रहा है
- 26. मैं वेब फॉर्म के साथ जेएसओएन का उपयोग कर AJAX कॉल कैसे सर्वर करूं?
- 27. $ .ajax(): उत्पत्ति शून्य की अनुमति नहीं है
- 28. jQuery AJAX का उपयोग कर सर्वर पर शून्य पास नहीं कर सकता। सर्वर पर प्राप्त मान स्ट्रिंग "नल"
- 29. आप वेबसाइट की जांच कैसे करते हैं?
- 30. div की जांच कैसे करें या नहीं है?
आप http://stackoverflow.com/questions/623299/can-the-x-requested-with-http-header-be-spoofed को देखने के लिए चाहते हो सकता है; यह दिखाता है कि 'एक्स-अनुरोधित-साथ' को धोखा दिया जा सकता है। –
आप यह भी देखना चाहते हैं http://www.yiiframework.com/forum/index.php?/topic/4945-yiiapp-request-isajaxrequest/ –