快速解决Canvas.toDataURL 图片跨域的问题


Posted in Javascript onMay 10, 2016

如题,在将页面的图片地址进行本地输出时(Html2Canvas.js),因不同源存在跨域问题,会出现toDataURL访问权限问题:

【Redirect at origin 'http://sub1.xx.com' has been blocked from loading by Cross-Origin Resource Sharing policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://sub2.xx.com' is therefore not allowed access.】

解决方案:

根据错误分析需要在控制头增加“Access-Control-Allow-Origin”,即允许访问源文件权限,那么我们对这个页面【注意是要输出页面的图片】这样处理:

var img = new Image;
img.onload = myLoader;
img.crossOrigin = 'anonymous'; //可选值:anonymous,*   
img.src = 'http://myurl.com/....';

或者是HTML中

<img src="" id="imgclcd" crossorigin="anonymous">

 核心是请求头中包含了 Origin: "anonymous"或"*" 字段,响应头中就会附加上 Access-Control-Allow-Origin: * 字段,问题解决。

以上这篇快速解决Canvas.toDataURL 图片跨域的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript中为元素加上name属性的方法
May 09 Javascript
script不刷新页面的联动前后代码
Sep 18 Javascript
js实现网页标题栏闪烁提示效果实例分析
Nov 20 Javascript
JS动态添加Table的TR,TD实现方法
Jan 28 Javascript
JQuery中DOM加载与事件执行实例分析
Jun 13 Javascript
jQuery实现仿美橙互联两级导航菜单效果完整实例
Sep 17 Javascript
JavaScript九九乘法口诀表的简单实现
Oct 04 Javascript
清除浏览器缓存的几种方法总结(必看)
Dec 09 Javascript
Ajax实现不刷新取最新商品
Mar 01 Javascript
如何在vue里面优雅的解决跨域(路由冲突问题)
Jan 20 Javascript
vue自动路由-单页面项目(非build时构建)
Apr 30 Javascript
vue 实现微信浮标效果
Sep 01 Javascript
jQuery事件的绑定、触发、及监听方法简单说明
May 10 #Javascript
网页前端登录js按Enter回车键实现登陆的两种方法
May 10 #Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【二】
May 10 #Javascript
JS实现登录页面记住密码和enter键登录方法推荐
May 10 #Javascript
详解JavaScript中的自定义事件编写
May 10 #Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【一】
May 10 #Javascript
JS组件系列之Bootstrap table表格组件神器【二、父子表和行列调序】
May 10 #Javascript
You might like
用PHP读取IMAP邮件
2006/10/09 PHP
php minixml详解
2008/07/19 PHP
PHP中遇到BOM、编码导致json_decode函数无法解析问题
2014/07/02 PHP
遍历echsop的region表形成缓存的程序实例代码
2016/11/01 PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
2018/05/12 PHP
javaScript checkbox 全选/反选及批量删除
2010/04/28 Javascript
JS声明变量背后的编译原理剖析
2012/12/28 Javascript
JavaScript常用的弹出广告及背投广告实现方法
2015/02/06 Javascript
js实现下拉框选择要显示图片的方法
2015/02/16 Javascript
jQuery插件Tooltipster实现漂亮的工具提示
2015/04/12 Javascript
js下将金额数字每三位一逗号分隔
2016/02/19 Javascript
javascript表单处理具体实现代码(表单、链接、按钮)
2016/05/07 Javascript
功能强大的Bootstrap组件(结合js)
2016/08/03 Javascript
jQuery树控件zTree使用方法详解(一)
2017/02/28 Javascript
jacascript DOM节点——元素节点、属性节点、文本节点
2017/04/18 Javascript
angular.js实现购物车功能
2017/10/23 Javascript
浅谈Emergence.js 检测元素可见性的 js 插件
2017/11/18 Javascript
深入理解ES6中let和闭包
2018/02/22 Javascript
原生js检测页面加载完毕的实例
2018/09/11 Javascript
JS实现简单的文字无缝上下滚动功能示例
2019/06/22 Javascript
JavaScript函数Call、Apply原理实例解析
2020/02/17 Javascript
基于ant design日期控件使用_仅月份的操作
2020/10/27 Javascript
[36:52]DOTA2真视界:基辅特锦赛总决赛
2017/05/21 DOTA
关于pymysql模块的使用以及代码详解
2019/09/01 Python
python爬虫利器之requests库的用法(超全面的爬取网页案例)
2020/12/17 Python
专注澳大利亚特产和新西兰特产的澳洲中文网:0061澳洲制造
2019/03/24 全球购物
企业总经理职责
2014/02/02 职场文书
酒店员工职业生涯规划
2014/02/25 职场文书
优乐美广告词
2014/03/14 职场文书
教师竞聘上岗演讲稿
2014/09/03 职场文书
会议欢迎词
2015/01/23 职场文书
nginx限制并发连接请求数的方法
2021/04/01 Servers
HAM-2000摩机图
2021/04/22 无线电
Java中的随机数Random
2022/03/17 Java/Android
Python 装饰器(decorator)常用的创建方式及解析
2022/04/24 Python