Подтвердить что ты не робот

JavaScript-то же правило происхождения - как это относится к разным субдоменам?

Как политика одного и того же происхождения применяется к следующим двум доменам?

http://server1.MyDomain.com

http://server2.MyDomain.com

Могу ли я запустить JS на странице, размещенной на сервере1, если содержимое было удалено с сервера2?

изменить в соответствии с Даниэлем ниже, я могу включить скрипты между разными субдоменами с помощью тега <script>, но как насчет асинхронных запросов? Что делать, если я загружаю script из server2 на страницу, размещенную на сервере1. Могу ли я использовать script для асинхронного общения с сервисом на сервере2?

4b9b3361

Ответ 1

Вы можете включать только сценарии между разными субдоменами, используя тег <script>, поскольку он освобожден от политики.

Использование http://www.example.com/dir/page.html в качестве источника (из Wikipedia):

Compared URL                               Outcome  Reason
---------------------------------------------------------------------------------------------
http://www.example.com/dir/page.html       Success  Same protocol and host
http://www.example.com/dir2/other.html     Success  Same protocol and host
http://www.example.com:81/dir2/other.html  Failure  Same protocol and host but different port
https://www.example.com/dir2/other.html    Failure  Different protocol
http://en.example.com/dir2/other.html      Failure  Different host
http://example.com/dir2/other.html         Failure  Different host (exact match required)
http://v2.www.example.com/dir2/other.html  Failure  Different host (exact match required)

UPDATE:

Могу ли я использовать script для связи асинхронно с сервисом на server2?

Да, вы можете с JSONP, который использует открытую политику для тегов <script> для извлечения JSON из другого источника.

Вы также можете рассмотреть возможность использования обратного прокси-сервера, как описано в следующей статье Stack Overflow:

Ответ 2

Конечно, вы можете запускать любой script, который вы вставляете в свое сознание, откуда оно взялось. Подумайте о том, как вставить карту Google на свою страницу.

Что вы описываете как шаблон jsonp. Если сервер на другом хосте возвращает script, который вы вставляете на свою страницу, а script вызывает функцию на вашей странице с аргументами ответа.