我有一個本地帶有ajax函數的html文件,嘗試從x.com中提取xml內容。運行時文件只能在IE瀏覽器上運行,並且在Firefox和Safari瀏覽器上無法運行。當然這可能是因爲相同的產地政策。但是,我從某人那裏聽說,對於使用file://協議加載的腳本,此相同的原產地策略將不適用。這是真的,如果是的話,我的本地html文件有什麼問題?即使對於本地文件,跨域ajax也會失敗
8
A
回答
8
它確實應用於本地文件,將它們全部視爲單獨的域(因瀏覽器而異,如您所見)。例如在Chrome中,你可以使用命令行啓動它允許這樣的:
chrome.exe --allow-file-access-from-files
5
在Mozilla的文件URI有更爲嚴格的同源策略限制.. https://developer.mozilla.org/En/Same-origin_policy_for_file:_URIs 但是你可以在騎通過詢問全球許可訪問使用:
if (navigator.userAgent.indexOf("Firefox") != -1) {
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
}
catch (e) {
alert("Permission UniversalBrowserRead denied -- not running Mozilla?");
}
}
相關問題
- 1. 即使對象構建失敗也會調用本地事件偵聽器
- 2. $ .ajax在跨域請求中失敗,即使使用apache代理
- 3. 即使Selenium測試失敗,構建也不會失敗
- 4. 測試用例即使實際失敗也不會失敗
- 5. 即使驗證失敗,核心數據也會保存對象
- 6. 即使路徑正確,shell腳本cd也會失敗
- 7. 跨域AJAX預檢失敗源檢查
- 8. jQuery的AJAX跨域調用失敗
- 9. 跨域調用失敗clientaccesspolicy文件
- 10. 即使狀態回來,跨域ajax命中錯誤也是200
- 11. 即使郵件發送失敗,也會發送MessageComposeResult
- 12. 即使條件滿足,rspec也會顯示失敗
- 13. document.getelementbyId()即使腳本位於文件末尾也會返回null
- 14. 即使<context:annotation-config>缺失,Spring @ Autowired也不會失敗
- 15. 即使在ajax後也調用失敗函數
- 16. 即使使用Microsoft.Net.Compilers,C#6.0 build也會失敗TFS Build
- 17. jQuery.getJSON失敗本地文件
- 18. 即使一個特定的NUnit測試失敗,MSBuild也不會失敗
- 19. 即使文件存在,腳本也不會識別該文件
- 20. Firefox中的https地址(SSL)跨域XHR失敗(適用於Chrome)
- 21. 跨域ajax文件上傳
- 22. Log4Net GetLogger即使對於未引用的文件也會創建滾動文件
- 23. 對於本地html或文件URL,ShellExecute失敗
- 24. jQuery ajax POST從本地文件訪問跨域不工作
- 25. 跨域JSON響應失敗
- 26. Cucmber.js步驟即使預期應該失敗也會越過
- 27. 即使驗證失敗,表單也會提交
- 28. 即使已安裝bundler-1.1.3,「捆綁安裝」也會失敗
- 29. 即使驗證失敗,表格也會被驗證
- 30. 即使發生異常,Junit也不會失敗?