我正在创建一个AngularJS应用程序,它有一个用户可以上传图片的画布。我正在使用
scope.image = scope.canvas.toDataURL()
实现我想要做的,即从我的图像中创建一个BASE64编码的字符串。当用户完成他的图片选择后,他将BASE64字符串提交给Web服务,该服务将其更改为.jpg文件。一切都很好。
但是用户有机会改变他的形象。他可以从数据库中将它放到同一个画布中并选择不同的图像。画布可以显示旧图像,但是当我想选择另一个图像时,我收到以下错误:
SecurityError: The operation is insecure
我尝试将以下代码添加到我的代码中:
image.setAttribute('crossOrigin', 'anonymous')
允许我在没有错误的情况下更改图像,但是由于某些我不知道的原因,数据库中的图像不会显示。
有没有人知道如何从服务器获取图像并将其显示到画布中然后能够从我的计算机将其更改为另一个图像而不会出现SecurityError?