我正在开发一个移动应用程序广告项目,所以我需要制作应用程序映像的横幅或缩略图。应用程序列表将从谷歌播放和苹果商店发布。所以我的网站正在利用其他出站域而不是本地域。
我使用HTML 5 canvas元素来管理运行时功能并将整个画布保存为图像。我需要做的是根据用户的颜色偏好和字体颜色等制作默认横幅(保存画布后)。
我的画布编码如下:
<canvas id="myCanvas" name="myCanvas" width="300" height="100" style="border:1px solid;margin-top: 25px;margin-left: 73px;margin-bottom: 12px;background: -moz-linear-gradient(top, #4c4e54, #4c4e54);"></canvas>
我用来将简单URL转换为数据URL的js是:
var myCanvas = document.getElementById("myCanvas");
var canvasData = myCanvas.toDataURL("image/png");
这里发生的事情是,每当我尝试使用数据保存整个canvas元素时:mozilla fiefox会给我以下错误:
Security error
[Break On This Error]
var canvasData = myCanvas.toDataURL("image/png");
我搜索了很多帖子和论坛,但没有人为此提供适当的解决方案。
花了很多时间,但给我造成了很大的破坏。
任何建议都将受理
提前完成任务......
答案 0 :(得分:1)
我已经阅读了你的帖子,我发现的是我面临的同样问题。
您收到此错误的原因是您的应用程序提取的图片来自实时google.play服务器或Apple商店服务器。
每当我们使用canvas时,安全性都是必不可少的。安全性是画布的一大特色。
你正在做的是你只是获取图像并在画布上调整大小并实现它。由于安全功能,它不允许你操纵出站服务器的图像并将其保存在你的数据库中。
您可以在控制台中使用allow-file-access-from-files以及firefox.exe命令并进行检查。