domToImage代码抛出安全错误(Dom Exception 18)仅在iOS浏览器上

domToImage code throwing security error (Dom Exception 18) on iOS browsers only

本文关键字:仅在 iOS 浏览器 Exception Dom 代码 安全 错误 domToImage      更新时间:2023-09-26

我正在尝试使用dom-to-image插件。下面是我的示例代码。

www.avarachan.com/test.html

它在台式机上运行良好,但在iphone上,它抛出错误

安全错误dom异常18

我尝试了以下htaccess选项

Header set Access-Control-Allow-Credentials "true"
Header set Access-Control-Allow-Origin "*"
Header set Access-Control-Allow-Headers "origin, x-requested-with, content-type"
Header set Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS" 

错误依然存在。它似乎是在android上的chrome上工作(我使用browserstack测试)。只是,iOS chrome和safari一直抛出异常。即使只是div和文本。

有一个类似的库,https://github.com/niklasvh/html2canvas,它适用于移动设备。但是这个库没有dom-to-image那么好。有js和canvas知识的人可以看看后者如何在iOS上工作,并可能建议一个解决方案,使dom-to-image在移动设备上工作?

"DOM Exception 18通常意味着你超出了设备允许的配额(50MB),尽管在某些环境中,这是因为苹果删除了WebSQL支持(例如WKWebView)。"

来源:https://github.com/pouchdb/pouchdb/issues/4234

<meta http-equiv="Content-Security-Policy" content="default-src *; style-src 'self' 'unsafe-inline'; script-src: 'self' 'unsafe-inline' 'unsafe-eval'">

并尽量降低质量