2009-07-23 11 views
13

से: https://developer.mozilla.org/En/Same_origin_policy_for_JavaScriptक्या Google AJAX लाइब्रेरी एपीआई समान मूल नीति को छोड़कर है?

The same origin policy prevents a document or script loaded from one 
origin from getting or setting properties of a document from another origin. 
This policy dates all the way back to Netscape Navigator 2.0.

तो क्यों एक ही मूल से लागू ?, जब एक इस तरह एक स्क्रिप्ट टैग है नीति नहीं है:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>

मुझे यकीन है कि मैं 'कुछ' याद कर रहा हूँ हूँ, मैं
http://code.google.com/p/browsersec/wiki/Part2#Same-origin_policy
समय की एक गुच्छा पढ़ा है लेकिन समझ नहीं कर सकते हैं ...

उत्तर

18

एचटीएमएल कहीं भी जहां से इसे लोड कर सकता है, यह एक और स्क्रिप्ट पृष्ठ पर चल रहा है जो किसी अन्य मूल से दस्तावेज़ नहीं ला सकता है।

+1

यह एक तरह का उत्तर है। सरल लेकिन संक्षिप्त। – Cesar

+6

सीज़र ने क्या कहा :-) यह भी इंगित करने लायक है कि समान मूल नीति पृष्ठ के डोमेन पर लागू होती है, स्क्रिप्ट नहीं: example.com से किसी पृष्ठ द्वारा लोड की गई एक स्क्रिप्ट example.com पर पहुंचने में सक्षम होगी example.com, example.net नहीं। – NickFitz

0

स्क्रिप्ट दस्तावेज नहीं हैं। वे दस्तावेज़ के संदर्भ में भागते हैं जिसमें <script> तत्व शामिल है।

+2

तुम मुझे को इंगित कर सकते हैं एक संदर्भ जहां इसे ऊपर से स्पष्ट रूप से समझाया गया है: ... दस्तावेज़ या स्क्रिप्ट को रोकता है ... – Cesar

2

<script> टैग इस नियम के लिए अपवाद हैं। किसी पृष्ठ को किसी अन्य सर्वर से किसी स्क्रिप्ट को "आमंत्रित" करने की अनुमति है, और इसे ठीक माना जाता है।

(इंटरनेट की पूरी अर्थव्यवस्था - ऑन-पेज विज्ञापन - इस पर आधारित है अनुमति दी जा रही हालांकि यह एक सुरक्षा जोखिम का प्रतिनिधित्व करता है, यह जल्द ही किसी भी समय बदलने के लिए नहीं जा रहा है।)