需要用 canvas 获取图片的 blob 。如果图片是跨域的,且服务器没有允许跨域,会报 tainted data 的错误。
我想既然是 Chrome 扩展,可能有别的方法来获取跨域图片的数据。
看了下一些插件,Copyfish 使用 cors anywhere 做代理,还有 Project Naptha ,似乎是从缓存获取数据,但代码比较复杂没看明白
需要用 canvas 获取图片的 blob 。如果图片是跨域的,且服务器没有允许跨域,会报 tainted data 的错误。
我想既然是 Chrome 扩展,可能有别的方法来获取跨域图片的数据。
看了下一些插件,Copyfish 使用 cors anywhere 做代理,还有 Project Naptha ,似乎是从缓存获取数据,但代码比较复杂没看明白
1
xulihang OP 研究了下可以通过给图片设置 crossorigin 属性允许跨域,不过需要服务器配置 header:
https://developer.mozilla.org/en-US/docs/web/html/cors_enabled_image |