Работает ли настройка document.domain во всех (большинстве) браузерах? - PullRequest
16 голосов
/ 14 апреля 2009

Документация по политике Same Origin гласит:

Существует одно исключение из того же Правило происхождения. Сценарий может установить значение document.domain к суффиксу текущего домена. Если это так, более короткий домен используется для последующие проверки происхождения. Например, принять сценарий в документе в http://store.company.com/dir/other.html выполняет следующий оператор:

document.domain = "company.com";

После это выражение выполняется, страница пройдет проверку происхождения с http://company.com/dir/page.html. Однако по тем же причинам company.com не может установить document.domain to othercompany.com.

Все ли популярные браузеры поддерживают это? Если нет, то какие нет?

Ответы [ 2 ]

19 голосов
/ 14 апреля 2009

Firefox 2,3, IE6,7,8, Chrome и Safari 2 и 3, Opera 9 все поддерживают document.domain;

Вероятно, подойдут и другие "более новые" браузеры, однако это те, которые я на самом деле тестировал мой код (который использует document.domain)

10 голосов
/ 20 марта 2012

Домен документа должен быть в нижнем регистре, а правила такие:

// Actual domain is "www.foo.com" 
document.domain = "foo.com"; // this is valid 

// Actual domain is "bar.foo.com" 
document.domain = "www.foo.com"; // this is invalid, "bar.foo.com" is not a subdomain of "www.foo.com" 

// Actual domain is "blah.bar.foo.com" 
document.domain = "bar.foo.com" // Ok 
document.domain = "foo.com" // Still ok 
document.domain = "bar.foo.com" // Invalid, you can't change it back to a more specific domain.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...