2009-07-23 3 views
13

Von: https://developer.mozilla.org/En/Same_origin_policy_for_JavaScriptWird die Google AJAX Libraries API die gleiche Ursprungsrichtlinie umgehen?

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.

So deshalb nicht die gleichen Ursprung Politik erzwungen ?, wenn ein einen Skript-Tag wie diese:

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

Ich bin sicher, dass ich ‚etwas‘ fehle bin, ich habe
http://code.google.com/p/browsersec/wiki/Part2#Same-origin_policy
ein paar mal gelesen, aber kann nicht herausfinden ...

Antwort

18

HTML kann von wo immer es möchte geladen werden, es ist ein anderes Skript läuft auf der Seite, die Dokumente von einem anderen Ursprung nicht abrufen kann.

+1

Das ist die Art von Antwort wie. Einfach aber prägnant. – Cesar

+6

Was Cesar gesagt hat :-) Es lohnt sich auch darauf hinzuweisen, dass die self-origin-Richtlinie für die Domain der Seite gilt, nicht für das Skript: Ein Skript, das von example.net über eine Seite bei example.com geladen wird, kann nur darauf zugreifen example.com, nicht example.net. – NickFitz

0

Skripte sind keine Dokumente. Sie werden im Kontext des Dokuments ausgeführt, das das Element <script> enthält.

+2

Können Sie mir zeigen auf eine Referenz, wo dies deutlicher erklärt wird, von oben: ... verhindert ein Dokument ODER Skript ... – Cesar

2

<script> Tags sind eine Ausnahme von dieser Regel. Eine Seite darf ein Skript von einem anderen Server "einladen", und das wird als OK angesehen.

(Die ganze Wirtschaft des Internets - On-Page-Werbung - basiert auf dieser dürfen Obwohl es ein Sicherheitsrisiko darstellt, ist es nicht in absehbarer Zeit ändern würde.)