我使用HTML5畫布和.toDataURL()
函數通過KineticJS's.toDataURL()
方法。畫布使用我的用戶上傳到網站的圖片,這些圖片存儲在不同的機器和子域farm1.domain.com
中。canvas.toDataURL()導致安全錯誤
問題:當.toDataURL()
被調用時,我得到的錯誤
SECURITY_ERR: DOM Exception 18
有沒有辦法解決?如果用戶通過domain.com
訪問該頁面,並且圖像託管在www.domain.com
,我也會遇到同樣的問題。
嘗試:
我添加以下行httpd.conf
虛擬主機內並重新啓動Apache服務。
Header add Access-Control-Allow-Origin "http://www.domain.com"
Header add Access-Control-Allow-Origin "http://domain.com"
Header add Access-Control-Allow-Origin "http://farm1.domain.com"
訪問來自頁domain.com
託管在www.domain.com
圖像時,我仍然得到同樣的錯誤! KineticJS有沒有解決這個問題的方法?
可能重複:http://stackoverflow.com/questions/9344548/security-error-with-canvas-todataurl-and-drawimage?rq=1和http://stackoverflow.com/questions/2390232/ why-does-canvas-todataurl-throw-a-security-exception –
重複並被回答,請看右欄中的相關內容,這裏是[spec](http://www.w3.org/TR/2011 /WD-html5-20110405/the-canvas-element.html#security-with-canvas-elements) – antejan
我想origin-clean標誌必須設置爲true以避免錯誤?這可以在KineticJS中完成嗎? – Nyxynyx