मैं RESTful API को विकसित करने में गहराई से गोता लगा रहा हूं और इसे प्राप्त करने के लिए अब तक कुछ अलग रूपरेखाओं के साथ काम किया है। बेशक मैं एक ही मूल नीति में चला गया हूं, और अब मैं सोच रहा हूं कि वेब सर्वर (वेब ब्राउज़र के बजाय) इसे कैसे लागू करते हैं। जो मैं समझता हूं, कुछ ब्राउज़र के अंत में होता है (उदाहरण के लिए, एक सर्वर से प्राप्त एक्सेस-कंट्रोल-अनुमति-मूल हेडर का सम्मान करते हुए)। लेकिन सर्वर का क्या?
उदाहरण के लिए, मान लें कि एक वेब सर्वर एक जावास्क्रिप्ट एक्सेस करने वाला वेब ऐप होस्ट कर रहा है, जो उस सर्वर पर होस्ट किया गया एक एपीआई भी एक्सेस करता है। मुझे लगता है कि सर्वर उसी मूल नीति को लागू करेगा --- ताकि केवल उस सर्वर पर होस्ट की गई जावास्क्रिप्ट को एपीआई तक पहुंचने की अनुमति होगी। यह किसी और को उस एपीआई के लिए एक जावास्क्रिप्ट क्लाइंट लिखने और दूसरी साइट पर होस्ट करने से रोक देगा, है ना? तो एक वेब सर्वर एक दुर्भावनापूर्ण क्लाइंट को कैसे रोक सकेगा, जो अपने एपीआई एंडपॉइंट्स को AJAX अनुरोध करने की कोशिश करेगा, जबकि उसी वेब सर्वर से उत्पन्न जावास्क्रिप्ट चलाने का दावा करता है? जिस तरह से सबसे लोकप्रिय सर्वर (अपाचे, नगनेक्स) इस तरह के हमले से बचाते हैं? या यह मेरी समझ किसी तरह से निशान से दूर है?
या क्या क्रॉस-ऑरिजिन पॉलिसी केवल क्लाइंट एंड पर लागू होती है?