2 अलग-अलग अनुप्रयोगों से, मैं क्रॉस-ऑर्गिन अनुरोध भेजने में सक्षम था। हालांकि ब्राउज़र क्रॉस-ओरिजिन की एक त्रुटि लौटाता है, लेकिन मेरा सर्वर अभी भी अनुरोध प्राप्त कर रहा है और निष्पादित कर रहा है। उदाहरण के लिए, एक दूरस्थ साइट से, मैं क्रॉस-डोमेन अनुरोध का उपयोग करक्रॉस डोमेन AJAX अनुरोध भेजने के लिए अन्य वेबसाइट को कैसे रोकें?
$.ajax({
xhrFields: {
withCredentials: true
},
data:{ my: 'a' },
url: 'http://MyApp/Page',
type: 'POST'
})
मुझे पता है कि ब्राउज़र स्क्रिप्ट के जवाब वापस नहीं करता आह्वान कर सकते हैं, लेकिन अपने सर्वर पृष्ठ अभी भी निष्पादित।
मान लें कि एक निर्दोष उपयोगकर्ता किसी साइट पर लॉग इन है, http://abc.com। यह एप्लिकेशन रिकॉर्ड डालने के लिए पोस्ट अनुरोध स्वीकार करेगा। जब निर्दोष उपयोगकर्ता निर्दोष http://HackerSite.com पर जाता है, तो http://HackerSite.comhttp://abc.com पर अजाक्स के माध्यम से एक POST अनुरोध भेजने में सक्षम होगा। इससे कैसे बचें?
अच्छा सवाल। यदि आपके पास इसका उत्तर है तो यदि आप पोस्ट करते हैं तो मैं बहुत सराहना करता हूं। –
एक डब्ल्यूसीएफ सेवा के लिए, आप अपने एंड पॉइंट कॉन्फ़िगरेशन में ** crossdomainscriptaccessenabled ** को गलत पर सेट कर सकते हैं। – Saranya
आपको एक फॉर्म सबमिट करने के साथ एक ही समस्या होगी, कोई जावास्क्रिप्ट शामिल नहीं है। सीओआरएस स्पेस को अतिरिक्त सुरक्षा के साथ दिमाग में नहीं बनाया गया था। इसके बजाए, यह आपके लिए अनिवार्य रूप से वही क्रियाएं करने की अनुमति देता है जो आप पहले से ही कर सकते हैं (क्रॉस-मूल) संस अजाक्स। सीओआरएस स्पेक थोड़ा आगे जाता है, जिसमें यह सुनिश्चित होता है कि आपका सर्वर अंतर्निहित अनुरोध भी प्राप्त नहीं करता है, यदि आपका सर्वर स्पेक में सही ढंग से ऑप्ट-इन नहीं करता है और उसी अनुरोध को क्रॉस-मूल संस अजाक्स नहीं भेजा जा सकता है (कहते हैं, एक फॉर्म जमा के माध्यम से)। इस आखिरी अवधारणा को प्रीफलाइटिंग कहा जाता है। –