Canvas图片跨域会遇到的问题及解决方法总结


当前第2页 返回上一页

没有设置 crossOrigin

SecurityError: The operation is insecure.

跨域

1

2

3

[Error] Origin http://192.168.3.99:3000 is not allowed by Access-Control-Allow-Origin.

[Error] Failed to load resource: Origin http://192.168.3.99:3000 is not allowed by Access-Control-Allow-Origin. (canvas.jpg, line 0)

[Error] Cross-origin image load denied by Cross-Origin Resource Sharing policy.

设置了 corssOrigin=use-credentials

1

2

3

[Error] Cannot use wildcard in Access-Control-Allow-Origin when credentials flag is true.

[Error] Failed to load resource: Cannot use wildcard in Access-Control-Allow-Origin when credentials flag is true. (canvas.jpg, line 0)

[Error] Cross-origin image load denied by Cross-Origin Resource Sharing policy.

测试示例

1、启动服务器

npm start:启动服务器

npm run start:corsdisable:启动跨域图片服务器

npm run start:corsable:启动跨域-CORS图片服务器

2、访问 http://localhost:3000

其他问题

1、cossOrigin 存在兼容性问题

对于不支持 cossOrigin 的浏览器(IE 10及以下版本不支持,Android 4.3 及以下版本不支持)可以使用 XMLHttprequest 和 URL.createObjectURL() 来做兼容,参考测试示例 Ajax 解决 Canvas 图片跨域问题。

2、为什么不使用同域图片?

现在的前端开发一般都是将静态资源放置到 CDN 上,例如:阿里云或者腾讯云服务,并且会有一个专门的域名来访问这些资源。

以上就是Canvas图片跨域会遇到的问题及解决方法总结的详细内容,更多文章请关注木庄网络博客

返回前面的内容

相关阅读 >>

html5画布的详细介绍

canvas实现简单的下雪效果(附代码)

html5标准学习-编码详解

canvas与h5如何实现视频截图功能

h5制作虚拟键盘时出现输入框遮挡的情况怎么办?

零基础学习html5

element-ui对话框可拖拽的功能如何实现?(附代码)

5个好用的h5速查手册

html5自定义遮罩的实现代码分享

html5 video如何实现实时监测当前播放时间(代码)

更多相关阅读请进入《canvas》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...