2008-12-01 51 views
31

我想在我的Windows機器上開發JavaScript。你知道一個瀏覽器,我可以關閉同源策略所以我可以在本地開發嗎? Firefox將是最佳的。我可以在任何瀏覽器上禁用SOP(同源策略)以進行開發嗎?

或者,如果您知道我可以用於SOAP/WSDL網站的代理服務器,它也會很棒。我正在嘗試使用JavaSCript SOAP Client

+0

當我開發MySpace應用程序時,我有完全相同的願望。 – 2008-12-01 10:15:43

回答

2

在本地服務器上建立一個頁面,該頁面調用遠程服務器並作爲遠程服務器應答。

示例,JavaScript爲JSON調用本地服務器。本地服務器爲該JSON調用遠程服務器。本地服務器從遠程服務器接收JSON並將其發送到JavaScript。

1

所有給出的答案都是很好的答案,當涉及到在生產中繞過相同的原產地政策。

對於開發,沒有方便的方法來「禁用」此安全檢查。有解決方法(請參閱其他答案)或黑客(您可以使用Greasemonkey來包裝JavaScript並使用其GM_xmlhttprequest作爲臨時措施),但無法按照您的描述實際「關閉」。

+1

+1 for GM_xmlhttprequest – baptx 2013-02-05 18:53:14

-1

您還可以通過ssh將本地端口重定向到遠程服務器和端口。

15

UPDATE 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?"); 
    } 
} 

它看起來像有一個在鉻問題產生an issue跟蹤器以實現相同的功能,因此您可以嘗試以參數--disable-web-security啓動Chrome。我不知道究竟是哪個版本可以正常工作,但至少諾基亞的WRT Tools附帶了Chrome安裝程序,實際上允許從其他站點加載內容。

+0

這實際上是測試代碼的方式。彈出警告,然後出現Just Works。非常感謝! – Shermozle 2010-06-17 06:32:24

+1

爲了記錄,這幾乎是用於開發的Chrome/Chromium啓動參數字符串:「--allow-file-access-from-files --disable-web-security --enable-file-cookies --disk- cache-size = 1 --media-cache-size = 1「 – miek 2010-11-11 12:02:13

+9

這不再有效。 – 2011-08-01 11:31:55

2

使用鉻13.07,您可以安全啓動禁用:

在/ usr/bin中/鉻瀏覽器 - 禁用網絡安全

這是在Ubuntu上11,但改變你的系統的位置。

0

在Chrome瀏覽器(&鉻)48及以上的,你應該添加標誌--user-data-dir這樣的:

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

和它的作品。

相關問題