在尝试将画布导出到图像时,开发人员经常遇到错误“未捕获的安全错误:无法执行“HTMLCanvasElement”上的“toDataURL”:受污染的画布可能无法导出。”此错误源于旨在保护用户信息的安全措施。
当画布的内容源自网站自身以外的域时,安全机制会将画布标记为“受污染”。这包括从本地计算机加载的图像、外部脚本或跨域请求。
在本地测试时,以下解决方法可以绕过“受污染的画布”问题:
1。集中文件:
将所有页面相关文件(HTML、图像、JS、CSS)组织到桌面上的单个非嵌套文件夹中。
2.利用跨域共享:
在 Dropbox 或 GitHub 等支持跨域图像文件保留和检索的平台上托管图像(记住在获取图像时设置跨域标志)。
3.使用本地 Web 服务器:
考虑在您的开发计算机上安装 IIS 或 PHP 等 Web 服务器。这模拟了生产环境并解决了与域相关的问题。
以上是为什么我无法将画布导出为图像? ('被污染的画布”错误解释)的详细内容。更多信息请关注PHP中文网其他相关文章!