下载鸥 > 网站下载 > 开发教程 > 前端开发

canvas操作图片防止跨域

121 2024-05-23 00:32:02

收藏
我们如果需要对图片进行canvas操作,此时就要考虑安全性,禁止引入图片跨域就是一个可行方案。那么,如何禁止跨域呢?

只需要添加如下属性
<img src ="" crossorigin="anonymous">

如果图片必须跨域,那么此属性就无法使用了。

此时,我们可以换个角度,接口添加跨域白名单
//php接口跨域白名单
header('Access-Control-Allow-Origin: https://www.example.com'); 

如果需要添加多个白名单,可以这样操作
// 允许访问的白名单域名  
$allowedOrigins = [  
    'https://www.example.com',  
    'https://sub.example.com',  
    // 可以添加更多允许的域名  
];  
  
// 获取请求的 Origin 头  
$origin = isset($_SERVER['HTTP_ORIGIN']) ? $_SERVER['HTTP_ORIGIN'] : '';  
  
// 检查请求的 Origin 是否在白名单中  
if (in_array($origin, $allowedOrigins)) {  
    // 如果在白名单中,则设置 Access-Control-Allow-Origin  
    header('Access-Control-Allow-Origin: ' . $origin);  
    // 可能还需要设置其他 CORS 相关的头  
    header('Access-Control-Allow-Methods: GET, POST, OPTIONS'); // 允许的方法  
    header('Access-Control-Allow-Headers: Content-Type'); // 允许的头字段  
    // ... 其他 CORS 相关的头  
}  

这样,就解决了图片跨域的安全性问题。

本文地址:https://xzo.com.cn/develop/js/1197.html

有帮助,很赞!

信息来源:下载鸥
导出教程 下载word版教程
发表评论 共有条评论
关于前端开发


JavaScript(简称“JS”) 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言。JavaScript 基于原型编程、多范式的动态脚本语言,并且支持面向对象、命令式和声明式(如函数式编程)风格。

JavaScript十分强大,不管是前端页面开发、视觉动态渲染、数据交互还是后端逻辑处理,都可以通过JS实现。虽然它是作为开发Web页面的脚本语言而出名,但是它也被用到了很多非浏览器环境中。

推荐前端开发开发教程
JavaScript过滤XSS攻击方法
JavaScript过滤XSS攻击方法

什么是XSS?XSS(Cross Site Scripting),跨站脚本攻击,是一种允许攻击者在另外一个...

1 377
JS验证手机是否11位的做法
JS验证手机是否11位的做法

在网站表单提交前,我们往往需要验证一下信息避免错误数据,那么,怎样验证手机号...

1 410
怎样点击清除ul里的全部li信息?
怎样点击清除ul里的全部li信息?

在通过jQuery做数据交互时我们可能存在这样的需求:通过点击按钮清空ul里的li...

1 482
Superslide响应式页面直接应用手机端技巧介绍
Superslide响应式页面直接应用手机端技巧介绍

如果是响应式网站,那么用superslide做轮播图需要做两个,这无疑是非常不方便的...

1 478
JS点击复制data-*属性(支持多个元素)
JS点击复制data-*属性(支持多个元素)

分享一段js原生点击复制data-*属性的源码,根据onclick事件触发,复制当前元素...

0 380
JS控制输入字数的两个方案
JS控制输入字数的两个方案

我们在文章输入框中经常有用到字数控制,但字数控制有两种方案,一种是字母/空...

0 386
jQuery监听点击事件弹出关注二维码教程
jQuery监听点击事件弹出关注二维码教程

通过jQuery实现点击关注按钮弹出二维码是一个比较常用的功能,今天鸥哥讲讲这...

0 492
JS获取浏览器语言(中英文多语言站)并自动跳转代码
JS获取浏览器语言(中英文多语言站)并自动跳转代码

如果是多语言站点,主动获取浏览器默认语言并自动进行跳转可以有效降低跳出率...

0 967
推荐插件
帝国cms批量添加后台用户插件
帝国cms批量添加后台用户插件

使用帝国cms的企业用户、新闻资讯类站点的用户很多,此类站点很多时候需要有...

0 761
帝国cms百度AI图像无损放大api接口对接插件
帝国cms百度AI图像无损放大api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像无损放大的功能。经过...

0 430
帝国cms百度AI图像去雾api接口对接插件
帝国cms百度AI图像去雾api接口对接插件

通过本插件,可以实现帝国cms网站对接百度云api实现图像去雾的功能。经过实际...

0 447
帝国cms网站会员登录与退出历史记录日志插件
帝国cms网站会员登录与退出历史记录日志插件

帝国cms默认只有上次登录时间与ip,没有一个记录清单,所以今天,我们分享这个帝...

0 392
帝国cms联想词搜索高级搜索插件下载
帝国cms联想词搜索高级搜索插件下载

帝国CMS自带的搜索功能虽然强大,但也有很强的局限性 -- 必须关键词完全匹配...

0 722
帝国cms纳米数据接口(足球比赛中最新数据)
帝国cms纳米数据接口(足球比赛中最新数据)

帝国cms 对接纳米数据(www.nami.com)接口,本接口主要接收、整理足球比赛实时数...

0 391
帝国cms自动给正文关键词添加tag内链
帝国cms自动给正文关键词添加tag内链

帝国cms有自带的给关键词添加内链功能,但需要手动添加关键词,容易出现疏漏和...

0 824
帝国cms自动生成文章新闻目录插件下载
帝国cms自动生成文章新闻目录插件下载

用户体验是我们的需求,百度蜘蛛的认可更是我们的需求。毕竟,没有收录排名,何来...

0 1111
客服QQ:341553759
扫码咨询 常见问题 >
官方交流群:90432500
点击加入