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

Могу ли я отключить SOP (Same Origin Policy) в любом браузере для разработки?

Я хочу разработать JavaScript на своей машине Windows. Знаете ли вы браузер, в котором я могу отключить политику одинакового происхождения, чтобы я мог развиваться локально? Firefox будет оптимальным.

Или, если вы знаете прокси-сервер, который я мог бы использовать для SOAP/WSDL-сайта, это было бы здорово.

Я пытаюсь работать с JavaSCript SOAP Client.

4b9b3361

Ответ 1

ОБНОВЛЕНИЕ 6/2012: Это использовалось для работы на момент написания, но, очевидно, не более того. К сожалению.

В Firefox (может применяться и к другим браузерам на базе Gecko), вы можете использовать следующий фрагмент кода JavaScript, чтобы разрешить междоменные вызовы:

if (navigator.userAgent.indexOf("Firefox") != -1) {
    try {
        netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
    } 
    catch (e) {
        alert("Permission UniversalBrowserRead denied -- not running Mozilla?");
    }
}

Похоже, что проблема, созданная в трекере Chromium, для достижения такой же функциональности, поэтому вы можете попробовать запустить Chrome с аргументом --disable-web-security. Я не знаю, для каких построений это работает точно, но по крайней мере Nokia WRT Tools поставляется с установкой Chrome, которая фактически позволяет загружать контент из другие сайты.

Ответ 3

Сделайте страницу на своем локальном сервере, которая вызывает удаленный сервер, и ответьте так же, как на удаленном сервере.

Например, javascript вызывает локальный сервер для JSON. Локальный сервер делает вызов на удаленном сервере для этого JSON. Локальный сервер получает JSON с удаленного сервера и отправляет его в javascript.

Ответ 4

Используя Chromium 13.07, вы можете запустить его с отключенной безопасностью:

/usr/bin/chromium-browser --disable-web-security

Это на Ubuntu 11, но измените местоположение как вашу систему.

Ответ 5

Все приведенные ответы являются хорошими, когда речь заходит о том, чтобы обойти одну и ту же политику происхождения в производстве.

Для разработки нет удобного способа "отключить" эту проверку безопасности. Возможны обходные пути (см. Другие ответы) или хаки (вы можете использовать Greasemonkey для завершения JavaScript и использовать их GM_xmlhttprequest в качестве временной меры), но не можете фактически "отключить", как вы описали.

Ответ 6

Firefox будет оптимальным.

Если вы можете жить с Internet Explorer, вы можете использовать .hta-приложение

http://msdn.microsoft.com/en-us/library/ms536496(VS.85).aspx

(Это один из способов, с помощью которого инструмент автоматизации тестирования Selenium справляется с проблемой)

Ответ 8

В Chrome (& Chromium) 48 и выше вы должны добавить флаг --user-data-dir следующим образом:

chromium-browser --disable-web-security --user-data-dir

И он работает.

Ответ 9

Вы также можете перенаправить локальный порт на удаленный сервер и порт через ssh.