[英]Error in Chrome: “Origin file:// is not allowed by Access-Control-Allow-Origin”
[英]Google Chrome --allow-file-access-from-files disabled for Chrome Beta 8
我一直在使用jQuery和Microsoft Seadragon技術開發AJAX應用程序。
我需要訪問html5 canvas函數toDataURL。
使用谷歌瀏覽器時,相同的原始規則適用於此功能,這意味着本地運行的頁面(URL中的file:///
)無法滿足相同的原始規則並拋出異常。
使用Chrome 7,使用--allow-file-access-from-files
選項啟動應用程序,允許從本地文件調用canvas.toDataURL()
。
但是,似乎使用相同選項( --allow-file-access-from-files
)啟動Chrome Beta 8不允許在本地文件上調用canvas.toDataURL()
。
Chrome是否放棄了--allow-file-access-from-files
選項,或者它剛被禁用,因為它是Beta版本而不是完整版本?
謝謝!
看看這個問題表明整個--allow-file-access-from-files
事情很匆忙。
關於你的問題
事實上,這似乎是測試版中的一些特殊內容,我在這里使用Chrome 8.0.552.5 dev
和--allow-file-access-from-files
預期工作,我也使用Chromium 9.0.592.0 (66889)
進行了測試Chromium 9.0.592.0 (66889)
它是否也按預期工作。
我懷疑開發分支有一些變化。 不幸的是,在Chrome的問題跟蹤器上找到一些東西幾乎是不可能的。
在使用命令行參數打開之前,您是否關閉了所有chrome實例? 您必須這樣做才能使該參數有效。
總結到目前為止的所有答案。
在運行chrome之前,請確保沒有運行chrome進程。
視窗
-allow-file-access-from-files
(用一個破折號)
Linux的
--allow-file-access-from-files
(有兩個破折號)
我已經找到了使用JavaScript / Flash方法解決問題的方法。 如果在“僅本地”安全沙箱中編譯Flash,則它具有對本地文件的完全訪問權限。 使用ExternalInterface,JavaScript可以請求Flash應用程序加載文件,Flash可以將結果傳遞回JavaScript。
您可以在此處找到我的實施: https : //code.google.com/p/flash-loader/
對我說的訣竅是你必須給出文件的絕對路徑,而不僅僅是HTML代碼中的文件名。 例如file:// ...而不是直接名稱,即使您正在訪問同一目錄中的文件。 它會工作!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.