快速解决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 相关文章推荐
JS 判断代码全收集
Apr 28 Javascript
商城常用滚动的焦点图效果代码简单实用
Mar 28 Javascript
前端开发过程中浏览器版本的两种判定方法
Oct 30 Javascript
元素未显示设置width/height时IE中使用currentStyle获取为auto
May 04 Javascript
js实现鼠标悬浮给图片加边框的方法
Jan 30 Javascript
jquery衣服颜色选取插件效果代码分享
Aug 28 Javascript
浅析Node.js实现HTTP文件下载
Aug 05 Javascript
基于vuejs+webpack的日期选择插件
May 21 Javascript
移动端利用H5实现压缩图片上传功能
Mar 29 Javascript
微信小程序报错:this.setData is not a function的解决办法
Sep 27 Javascript
JS对象与json字符串相互转换实现方法示例
Jun 14 Javascript
Vue2.0实现组件之间数据交互和通信操作示例
May 16 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许愿墙模块功能分析
2013/06/25 PHP
php命名空间学习详解
2014/02/27 PHP
thinkPHP5.0框架简单配置作用域的方法
2017/03/17 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
2017/08/31 PHP
一段多浏览器的&quot;复制到剪贴板&quot;javascript代码
2007/03/27 Javascript
用javascript获取当页面上鼠标光标位置和触发事件的对象的代码
2009/12/09 Javascript
javascript 事件处理、鼠标拖动效果实现方法详解
2012/05/11 Javascript
jquery 插件学习(二)
2012/08/06 Javascript
Jquery ajaxStart()与ajaxStop()方法(实例讲解)
2013/12/18 Javascript
JS实现简单的顶部定时关闭层效果
2014/06/15 Javascript
用jquery的方法制作一个简单的导航栏
2014/06/23 Javascript
JavaScript Sort 的一个错误用法示例
2015/03/20 Javascript
学做Bootstrap的第一个页面
2016/05/15 HTML / CSS
微信小程序 使用腾讯地图SDK详解及实现步骤
2017/02/28 Javascript
如何让你的JS代码更好看易读
2017/12/01 Javascript
详解vuex持久化插件解决浏览器刷新数据消失问题
2019/04/15 Javascript
今天,小程序正式支持 SVG
2019/04/20 Javascript
如何实现js拖拽效果及原理解析
2020/05/08 Javascript
在SAE上部署Python的Django框架的一些问题汇总
2015/05/30 Python
python实现按行切分文本文件的方法
2016/04/18 Python
Python实现发送QQ邮件的封装
2017/07/14 Python
TensorFlow入门使用 tf.train.Saver()保存模型
2018/04/24 Python
Python实现曲线拟合操作示例【基于numpy,scipy,matplotlib库】
2018/07/12 Python
python3.6生成器yield用法实例分析
2019/08/23 Python
python2.7实现复制大量文件及文件夹资料
2019/08/31 Python
pymysql模块的使用(增删改查)详解
2019/09/09 Python
django修改models重建数据库的操作
2020/03/31 Python
利用python下载scihub成文献为PDF操作
2020/07/09 Python
Python基于callable函数检测对象是否可被调用
2020/10/16 Python
机修工岗位职责
2013/11/24 职场文书
服装设计行业个人的自我评价
2013/12/20 职场文书
个人师德师风自我剖析材料
2014/09/29 职场文书
大学生联谊活动策划书(光棍节)
2014/10/10 职场文书
社区元宵节活动总结
2015/02/06 职场文书
2015年度优秀员工自荐书
2015/03/06 职场文书
2015年音乐教学工作总结
2015/07/22 职场文书