2014-01-22 86 views
0

正如標題所說,我已爲所有圖像啓用CORS,但在嘗試將它們放到畫布上並提取該畫布時Chrome仍然出現錯誤(Chrome和FF)。我跑了圖像的一個小嗅探器來測試它,它似乎是在事實上恢復正確的標題:CORS已啓用,但toDataURL仍然會發出警告

訪問控制允許來源:*

上午我遺漏了什麼?

+2

...你也指定圖像對象上的crossOrigin =「anonymous」屬性?如果是這樣,那不是問題,我們需要更多的代碼。 – markE

+0

解決了問題,@ markE。謝謝。我也嘗試使用PaintbrushJS着色這些圖像,但現在它給了我「跨源資源共享策略拒絕跨源圖像加載」。任何想法? 編輯:它似乎可能是因爲我的所有圖像都通過JS動態加載。 – user1807782

回答

1

您需要要求 CORS使用的服務器,只是這個屬性添加到圖像標籤:

<img crossOrigin="anonymous" ... /> 
從JavaScript

或動態,用它作爲屬性(假設img創建或已經獲得) :

var img = new Image; 
img.onload = callback; 
img.crossOrigin = ''; /// = anonymous 
img.src = '...'; 

如果你有多個圖片加載,你可以使用支持跨域請求(例如圖像裝載我YAIL loader在那裏你可以請求所有或使用CORS加載單個圖像)。

相關問題