2010-03-09 231 views
11

我需要從運行在firefox中的腳本發出一個跨域請求(它僅用於開發目的)。Firefox跨域請求

這可以實現嗎?也許修改about:config鍵?

謝謝!

+0

我更新回答,我認爲Firefox插件會做你需要的。 – rook

回答

2

Opera 10.5允許「允許跨域訪問」。

1

Same Origin Policy適用於所有瀏覽器。使用JavaScript,您可以發送GET和POST請求,但您將無法像使用XHR一樣閱讀響應。 XHR只能針對腳本執行的域進行。這是一個重要的規則,因爲它可以防止廣泛的跨站點請求僞造(CSRF)漏洞。

您可以使用flash with a crossdomain.xml file,我認爲這是最強大的解決方案,因爲它可以完全滿足您的需求並具有最佳的瀏覽器兼容性。

編輯:如果你想專門在Firefox上運行的JavaScript繞過相同的原點策略,那麼你可以構建一個自定義加載項。或者,也許Cross Domain add-on將做你需要的。

+0

我不需要瀏覽器兼容性。這就是爲什麼我指定我只需要這個FF。無論如何感謝 –

+0

+1讚的Cross Domain補充! –

+0

任何人都知道Rook引用的「跨域加載項」發生了什麼?該鏈接似乎死了,但我拼命搜索Firefox的一個附加組件,允許爲開發目的發送跨域請求(dojo mobile) –

3

James Padolsey關於如何使用jQuery跨域請求有一個很好的帖子,但該帖子也有非常好的資源。有需要進行一些調整到其他服務器上完成,以允許跨域調用使用的crossdomain.xml

+0

+1 YQL真棒。 – rook

+0

鏈接isbroken atm – Claudiu

2

晚了一點,但想到我會在這裏發佈信息無妨;

我沒有完全讀取每個人的答案的鏈接,但我有一個快看,我沒有看到任何人使用PrivilegeManager提到 - Bypassing Security Restrictions and Signing Code。使用此功能,您可以讓FireFox JavaScript應用程序在瀏覽器中調用擴展安全權限的請求,包括跨域XHR。

0

正如'The Rook'所提到的,只要您要與之通話的服務器提供允許您訪問服務器的XML策略文件,就可以使用Flash執行跨域請求。如果您控制兩臺應該很容易完成的服務器。

如果你不想寫任何Flash代碼自己或如果你想能夠做到通過SSL/TLS跨域檢查出的開源Forge項目:

http://github.com/digitalbazaar/forge/blob/master/README

+0

只要你控制服務器,你也可以使用CORS。 – Antimony

+0

今天(2013)確實如此。儘管如此,仍然存在您希望/需要更多控制TLS堆棧的用例,因此上述建議仍可能適用。 – dlongley