快速解决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 未结束的字符串常量常见解决方法
Jan 24 Javascript
Javascript读取cookie函数代码
Oct 16 Javascript
jquery获取选中的文本和值的方法
Jul 08 Javascript
javascript实现的简单计时器
Jul 19 Javascript
纯javascript实现分页(两种方法)
Aug 26 Javascript
微信小程序中显示html格式内容的方法
Apr 25 Javascript
Iscrool下拉刷新功能实现方法(推荐)
Jun 26 Javascript
解决vue同一slot在组件中渲染多次的问题
Sep 06 Javascript
JQuery实现ul中添加LI和删除指定的Li元素功能完整示例
Oct 16 jQuery
vue组件库的在线主题编辑器的实现思路
Apr 03 Javascript
vue实现下拉菜单树
Oct 22 Javascript
JavaScript实现前端倒计时效果
Feb 09 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
WIN98下Apache1.3.14+PHP4.0.4的安装
2006/10/09 PHP
Email+URL的判断和自动转换函数
2006/10/09 PHP
php 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)
2010/05/16 PHP
php遍历树的常用方法汇总
2015/06/18 PHP
帝国CMS留言板回复后发送EMAIL通知客户
2015/07/06 PHP
Laravel如何使用数据库事务及捕获事务失败后的异常详解
2017/10/23 PHP
PHP将整数数字转换为罗马数字实例分享
2019/03/17 PHP
使用JS取得焦点(focus)元素代码
2014/03/22 Javascript
浅谈jQuery构造函数分析
2015/05/11 Javascript
JavaScript识别网页关键字并进行描红的方法
2015/11/09 Javascript
bootstrap实现弹窗和拖动效果
2016/01/03 Javascript
详解javascript实现瀑布流列式布局
2016/01/29 Javascript
AngularJS全局scope与Isolate scope通信用法示例
2016/11/22 Javascript
JS实现的五级联动菜单效果完整实例
2017/02/23 Javascript
Node.js实现文件上传的示例
2017/06/28 Javascript
vue修改vue项目运行端口号的方法
2017/08/04 Javascript
使用JS动态显示文本
2017/09/09 Javascript
从0到1搭建Element的后台框架的方法步骤
2019/04/10 Javascript
vue实现绑定事件的方法实例代码详解
2019/06/20 Javascript
Element-ui DatePicker显示周数的方法示例
2019/07/19 Javascript
nodejs的安装使用与npm的介绍
2019/09/11 NodeJs
webpack HappyPack实战详解
2019/10/08 Javascript
angular中的post请求处理示例详解
2020/06/30 Javascript
[01:57]2016完美“圣”典风云人物:国士无双专访
2016/12/04 DOTA
[03:43]TI9战队采访——PSG.LGD
2019/08/22 DOTA
在Python的Flask框架中构建Web表单的教程
2016/06/04 Python
pytorch中获取模型input/output shape实例
2019/12/30 Python
HTML5+Canvas+CSS3实现齐天大圣孙悟空腾云驾雾效果
2016/04/26 HTML / CSS
荷兰牛仔裤网上商店:Jeans Centre
2018/04/03 全球购物
初三物理教学反思
2014/01/21 职场文书
行政专员求职信范文
2014/05/03 职场文书
摩登时代观后感
2015/06/03 职场文书
2015年社区国庆节活动总结
2015/07/30 职场文书
读《方与圆》有感:交友方圆有度
2020/01/14 职场文书
WebWorker 封装 JavaScript 沙箱详情
2021/11/02 Javascript
pnpm对npm及yarn降维打击详解
2022/08/05 Javascript