图片转base64 遇到的问题

问题背景:需要从后台拉取图片并转成base64,方案是将图片绘制到canvas画布,调用画布的toDataURL方法得到图片的base64
代码如下:


image.png

运行后发生以下错误:


image.png

翻译过来大概是,执行toDataUrl失败,被污染的画布数据无法读出

原因:

画布上的图片数据可以来源很多地方,如果跨域加载图片,如果无法保证来源的安全性,会认为画布的数据认为是污染的,不安全的,无法从受污染的画布读出数据

解决方法:

给image设置跨域属性,告诉浏览器从不同origin加载图片资源


image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容