Access-Control-Allow-Origin 跨域设置多域名

从芯片原厂到BSP工程师:技术转型与核心能力解析 嵌入式系统开发中,BSP(板级支持包)作为连接硬件与操作系统的关键层,其开发能力直接影响设备稳定性与性能。理解Linux内核架构(如内存管理、进程调度)和基础接口协议(I2C/SPI/USB)是BSP工程师的核心技能。在芯片验证与驱动开发场景中,多核异构系统调试与稳定性问题排查(如死机分析)展现了工程师的实战能力。随着物联网与智能设备发展,掌握从硬件适配到系统优化的全链路技术栈,成为职业发展的关键突破点。 阅读详情

在HTML5中有一种新的跨域方式,即设置“Access-Control-Allow-Origin”可以指定允许跨域访问的域名。
Node.js中可以这样写

app.all(‘*’, function(req, res, next) {
res.header(“Access-Control-Allow-Origin”, ‘https://www.google.com‘);
res.header(‘Access-Control-Allow-Methods’, ‘POST, GET’);
res.header(‘Access-Control-Allow-Headers’, ‘X-Requested-With’);
res.header(‘Access-Control-Allow-Headers’, ‘Content-Type’);
next();
});
但在实际使用中,可能需要设置多个域名。
在网上查询资料,有一种写法

Access-Control-Allow-Origin: https://www.google.com,https://www.baidu.com
改成相应的代码,但是始终提示问题,只允许一个值。

于是换种方式,查资料发现,许多是先自己判断域名是否是允许的,如果是再设置允许跨域访问。那么代码应该改成如下形式

app.all(‘*’, function(req, res, next) {
if( req.headers.origin == ‘https://www.google.com’ || req.headers.origin == ‘https://www.baidu.com’ ){
res.header(“Access-Control-Allow-Origin”, req.headers.origin);
res.header(‘Access-Control-Allow-Methods’, ‘POST, GET’);
res.header(‘Access-Control-Allow-Headers’, ‘X-Requested-With’);
res.header(‘Access-Control-Allow-Headers’, ‘Content-Type’);
}
next();
});
使用时可以把允许访问的域名写成一个数组,然后JS写一个比较字符串是否在数组内的函数,这样使用就比较方便了。

其中,Access-Control-Allow-Origin就是我们需要设置的域名,Access-Control-Allow-Methods是允许的请求方式,Access-Control-Allow-Headers跨域允许包含的头。

——————–java—————————-
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws IOException, ServletException {
HttpServletResponse httpResponse = (HttpServletResponse) res;
String [] allowDomain= {“http://132.12.11.11:8888“,”http://123.112.112.12:80“,”http://123.16.12.23“,”http://121.12.18.13:10195“};
Set allowedOrigins= new HashSet(Arrays.asList(allowDomain));
String originHeader=((HttpServletRequest) req).getHeader(“Origin”);
if (allowedOrigins.contains(originHeader)){
((HttpServletResponse) res).setHeader(“Access-Control-Allow-Origin”, originHeader);
((HttpServletResponse) res).setContentType(“application/json;charset=UTF-8”);
((HttpServletResponse) res).setHeader(“Access-Control-Allow-Methods”, “POST, GET, OPTIONS, DELETE”);
((HttpServletResponse) res).setHeader(“Access-Control-Max-Age”, “3600”);
((HttpServletResponse) res).setHeader(“Access-Control-Allow-Headers”, “Origin, No-Cache, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type, X-E4M-With,userId,token”);//表明服务器支持的所有头信息字段
((HttpServletResponse) res).setHeader(“Access-Control-Allow-Credentials”, “true”); //如果要把Cookie发到服务器,需要指定Access-Control-Allow-Credentials字段为true;
((HttpServletResponse) res).setHeader(“XDomainRequestAllowed”,”1”);
}
chain.doFilter(req, res);
return;
}

C51红外接收与发射控制及原理编码与解码 基于38khz的NEC协议红外发射简易电路图NEC协议产生红外光数据编码 0 1结合程序红外接收接收电路解码过程解码代码 红外发射 通过通过红外二极管发射红外光,三极管的状态来控制。 红外模块一般都是三个引脚,vcc,gnd,dat,通过控制dat口的来控制发射红外光。 简易电路图 将数据口连接到单片机的引脚为上,控制io口的电平状态,来控制三极管的导通状态,从而发射红外光。 NEC协议 NEC协议特点:8位地址和8位命令为提高可靠性,地址和命令都传输2次,脉冲间隔调制38kHz载波频率。 包含引导码, 阅读详情

相关推荐

Cursor Agent模式下如何优雅切换conda环境运行Python脚本?3种实用方法实测

本文针对Cursor Agent模式下运行Python脚本时环境错配的痛点,实测了三种优雅切换conda环境的实用方法。通过Shell全局配置、项目级.cursorrc文件定制以及对话中直接指令,开发者可以确保AI助手在正确的虚拟环境中执行代码,从而提升开发效率和协作流畅度。

redis7keeper的博客 597

Cors跨域(三):Access-Control-Allow-Origin多域名?

响应头设置不合理,公司安全部门会请你喝茶

架构师:通透,才能写出好代码! 2万+

PointMLP实战:5分钟用PyTorch搭建点云分类模型(附GitHub代码)

本文提供了基于ICLR 2022论文PointMLP的点云分类模型实战教程。通过PyTorch框架,详细介绍了从环境搭建、数据预处理、模型架构解析到训练推理的全流程,并分享了性能调优技巧。该模型利用残差MLP模块构建,结构清晰高效,适合开发者快速上手并应用于实际点云处理项目。

r2s3t4的博客 215

Access-Control-Allow-Origin如何给CORS设置多域名

作为通配符来说,直接变成对所有域名公开,非常的不安全。那如何设置特定的多个域名?Vary:<header1> , <header2>... 某些字段进行缓存。因此,响应现支持字段Vary,其可以对报文中某个字段的缓存进行控制。Vary: * 所有字段都不进行缓存。控制哪些域名可以共享资源,取值如下。

weixin_57208584的博客 6525

企业华为TaurusDB数据库国产替代要点全记录

国产化数据库全方位对比、从互联网企业的先进经验来看mysql的用法、及sql优化、sql异构修改、及数据同步方面都做了一些讲解

深耕互联网的码农,在AI及国产化浪潮下,希望把自己的能力输出给更多的人 1063

瑞数6.5逆向实战:手把手教你用RPC搞定cookie sign加密(附环境补全技巧)

本文深入解析瑞数6.5逆向实战,重点探讨如何结合环境补全与RPC调用技术来应对其动态加密机制。文章详细介绍了环境指纹采集、双重验证等核心防护原理,并提供了基于Puppeteer的RPC实现方案,手把手教你搞定cookie sign加密,附有实用的环境补全技巧与完整代码示例。

weixin_29315091的博客 1273

Springboot解决前后端分离项目跨域,配置多个域名

需求和想法 项目前后端分离以后需要配置跨域,且需要允许浏览器多个域名跨域。我们知道Access-Control-Allow-Origin里面是只可以写一个域名的,但是我们可以通过配置一个可被允许的origins数组,然后判断前端请求中的origin是否在这个数组中来解决这个问题~ Springboot的解决方法 方法有两种 第一种:使用springboot 已经实现的工具类org.springfr...

酸酸酱的博客 2万+

I2C总线原理及总线信号的实现

I2C总线是一种多主机总线,连接IIC总线上的器件分为主机和从机,主机有权发起和结束一次通信,而从机只能被主机呼叫;当总线上有多个主机同时启用总线时,I2C也具备冲突检测和仲裁的功能来防止错误产生;每个连接到IIC总线上的器件都有一个唯一的地址(7bit),且每个器件都可以作为主机也可以作为从机(同一时刻只能有一个主机),总线上的器件增加和删除不影响其他器件正常工作;I2C总线在通信时总线上发送数据的器件为发送器,接收数据的器件为接收器;主要用于近距离(抗干扰能力稍弱),低速的芯片之间的通信(传输视频,带宽

YLG_lin的博客 3943

Nginx设置Access-Control-Allow-Origin多域名跨域

nginx上的解决方案是配置Access-Control-Allow-Origin来解决,但是要么允许所有,要么允许单个的,都不能解决我的文件,经过一番查找找到了解决方法,为大家介绍的关于nginx设置Access-Control-Allow-Origin多域名跨域的解决方法。可通过如下配制进行多域名的设置。

1193379199的博客 5401

innovus实战攻略 | 用setUsefulSkewMode解锁时序优化的“隐藏技能”!

就像时序优化的“瑞士军刀”,参数虽多,但掌握了分类逻辑后,用起来其实很简单!如果你有更绝的用法,欢迎在评论区分享,大家一起卷起来!简单来说,它就是时序优化的“乾坤大挪移”。通过调整触发器的时钟到达时间,把关键路径的建立时间“借”给非关键路径,从而实现全局时序收敛。别急,这个命令就是你的“时序救星”!(工具最多只能借1.2ns的裕量,防止“借过头”导致新问题!这个参数能帮你兜底!(对关键路径“下死手”,确保优化到位!(设置上限,给工具套上“紧箍咒”!(直接跳过边界,避免优化反噬!(全局管理,防止“借过头”!

weixin_50820814的博客 1355

UE5游戏逆向实战:用FModel提取.pak文件中的3D模型(附Dumper-7避坑指南)

本文详细介绍了如何使用FModel工具从UE5游戏的.pak文件中提取3D模型,并提供了Dumper-7的避坑指南。内容涵盖FModel工具链配置、UE5特有的unversioned properties问题解决方案、Dumper-7实战流程以及模型后处理技巧,帮助开发者高效获取游戏资产。

weixin_30872499的博客 422

跨域请求解决方法----不允许有多个 ‘Access-Control-Allow-Origin‘ CORS 头

但是后端启动后,前端报错'Access-Control-Allow-Origin' CORS 多个头。如上代码:注解重复配置跨域。

weixin_65287123的博客 1667

SAP-ABAP:SAP系统调优利器:RZ11动态参数修改全指南

SAP系统调优利器:RZ11动态参数修改全指南

baidu_35680696的博客 970

允许多域名跨域 php,Access-Control-Allow-Origin 跨域设置多域名

在HTML5中有一种新的跨域方式,即设置“Access-Control-Allow-Origin”可以指定允许跨域访问的域名。Node.js中可以这样写app.all('*', function(req, res, next) {res.header("Access-Control-Allow-Origin", 'https://www.google.com');res.header('Acces...

weixin_33503998的博客 1195

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

nginx Access-Control-Allow-Origin 多域名跨域设置

2019-1-16 12:24:15 星期三 网站的静态文件(js, css, 图片, 字体等)是在一个单独的域名下的, 为了防止非法访问, 给nginx添加了跨域的控制, 也可以在PHP代码中添加 nginx指令: add header 1. 在location块中, 判断当前来源的域名($http_origin)是不是符合条件, 2. 符合条件的话就用add_header指令设置 Ac...

weixin_30906425的博客 3576

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

设置Access-Control-Allow-Origin,解决多域名跨域问题

设置Access-Control-Allow-Origin,解决多域名跨域问题项目中为了测试方便,通常将Access-Control-Allow-Origin设置为“*”,在项目上线时再改为真实域名。 方法简单粗暴!之后用到一个WangEditot富文本编辑器,上传图片需要确定具体的Access-Control-Allow-Origin,导致在测试图片上传功能时较为麻烦。通过网上搜索,找到了解决方

止木的专栏 3万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

实测 CORS 跨域访问之 Access-Control-Allow-Origin 多域名设置

通过 Windows 与虚拟机 Linux 的交互,实现 CORS 跨域访问,并在响应头的 Access-Control-Allow-Origin 中成功实现允许多个域名跨域访问。最后给出注意事项。

PeacefulWinter的博客 4万+

跨域请求 笔记(二)设置Access-Control-Allow-Origin允许多域名访问

对于前后端分离的项目难免会遇到跨域的问题,在设置跨域的问题中有许多需要注意的事情,如本次将要将的设置Access-Control-Allow-Origin使其允许多域名请求。 (1)使用通配符: 这种方式允许所有域名都可以访问,并不安全,而且这种方式浏览器不能携带cookie信息(携带cookie信息只能使用真实域名,如下面第二中方式)。这种方式只推荐在不带cookie信息的开发中...

dev_hui 的博客 9404

PHP Access-Control-Allow-Origin设置多个域名

//废话不多说,复制就完了 $origin = isset($_SERVER['HTTP_ORIGIN'])? $_SERVER['HTTP_ORIGIN'] : ''; $allowOrigin = array( 'https://www.apeaksoft.com', 'https://imypass.apeaksoft.com' ); if (in_array($origin, $allowOrigin)) { header("Access-Control-Allow-Origin:".$ori

qq_42572477的博客 1297

PHP 设置多域名允许跨域访问

跨域是Web开发中常见的问题,解决跨域的方法也有很多。本文以CORS(跨域资源访问)方式和大家一起来了解一下针对PHP语言,如何设置允许多域名访问。 首先,我们还需要对一些基础知识有了解。 (1)服务器变量     针对PHP语言而言,服务器变量存储在$_SERVER数组中,在这个数组中有一个特殊的键值:HTTP_ORIGIN。这个键只在跨域的时候才会存在值,同源时为空字符串。 (2)响应...

ydm东方旭日的专栏 6739

HTTP 头部字段 Access-Control-Allow-Origin

前后端分离的协作开发方式,已经被很多公司采用。若前后端部署在不同的域名下,就会碰到跨域的问题。对于跨域的问题,W3C 有标准的解决方案,即跨域资源共享(Cross-origin resource sharing),缩写为 CORS。详细了解 CORS,可以参考阮一峰的博文:跨域资源共享 COR...

choubiao0107的博客 2080

nginx 配置支持多域名跨域

背景 前端跨域一般使用JSONP(GET请求小数据量)、CORS(跨域资源共享,Cross-Origin Resource Sharing,用来传递大数据量) 现在的场景是需要nginx配置支持多域名跨域,跨域一般需要设置Access-Control-Allow-Origin。 问题描述 配置nginx,如果简单设置add_header Access-Control-Allow-Origin...

1302

前端跨域请求get_浏览器中的跨域问题与 CORS

(给前端大全加星标,提升前端技能)作者:全栈成长之路 公号 / 山月行❝Access to XMLHttpRequest at 'xxx' from origin 'xxx' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resou...

weixin_39948210的博客 3347

Nginx跨域配置

CORS是一个W3C标准,全称是跨域资源共享(Cross-originresourcesharing)。即从一个域名的网页去请求另一个域名的资源。本质上对于此类请求,只要协议、域名、端口有任何一个的不同,就被当作是跨域,即都被当成不同源。通常基于安全考虑,Nginx启用了同源策略,即限制了从同一个源加载的文档或脚本如何与来自另一个源的资源进行交互。这是一个用于隔离潜在恶意文件的重要安全机制。但若同一个公司内部存在多个不同的子域,子域之间需要互访,此时可通过跨域进行实现。注意。...

m0_67391683的博客 2万+

允许多域名跨域 php,PHP设置多域名允许跨域访问

针对 PHP 语言设置多域名允许跨域访问服务器变量:服务器变量存储在 $_SERVER 数组中,在这个数组中有一个特殊的键值:HTTP_ORIGIN。这个键只在跨域的时候才会存在值,同源时为空字符串响应头设置允许某域名访问:access-control-allow-originheader 函数可以设置允许某域名跨域访问,形式为 header('access_control_allow_origi...

weixin_42116734的博客 175
上一篇: Access-Control-Allow-Origin跨域请求
下一篇: nginx 用lua中获取url路径相关信息
whackw
博客等级 码龄16年 203粉丝 69原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值