express 统一设置 res.setHeader 问题

本文介绍了一种在app.js中统一设置跨域的方法,通过使用app.all('*')中间件简化每个响应头(res)的跨域配置过程,并强调了该段代码需要放置在路由设置之前。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

解决了跨域问题以后,发现再每一个res里面都需要写一大堆 res.setHeader,实在另人目眩。

所以我就想,肯定能把他们都放到一堆去的。我百度了一下,发现了如下方法。

就是在 app.js 添加如下代码:

app.all('*', function(req, res, next) {
    res.setHeader('Access-Control-Allow-Origin','*');
	res.setHeader('Access-Control-Allow-Methods', 'GET, POST');  
    res.setHeader('Access-Control-Allow-Headers', 'X-Requested-With,content-type, Authorization');  
    // res.setHeader("Content-Type", "application/json;charset=utf-8"); 
    next();
});

但是要注意的一点是,这段代码需要放在路由前面。

位置如下:


我尝试过放在路由那一段后面,失败了。我猜应该和 next 执行函数有关系。

如有知道的,请大神指导。


评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值