node.js用cors解决跨域问题

本文详细介绍了如何通过npm安装并配置Cors中间件,重点讲解了Access-Control-Allow-Origin、Access-Control-Allow-Headers和Access-Control-Allow-Methods三个关键响应头的设置,以及简单请求和预检请求的区别。

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

使用cors中间件来解决。

因为cors是第三方中间件,所以首先安装 npm i cors

然后在接口处引入require

然后在路由之前用app.use(cors)注册cors中间件

cors的三个响应头

1.Access-Control-Allow-Origin

使用res.setHeader(“Access-Control-Allow-Origin”,"*")

表示允许任何域的请求,如果想要特定的话*换成特定url

2.Access-Control-Allow-Headers

因为cors仅支持客户端向服务端发送9个请求头,如果超过了就用res.setHeader(“Access-Control-Allow-Headers”,"添加需要的请求头"

3.Access-Control-Allow-Methods

默认情况下只支持客户端发起GET POST HEAD ,如果要用其他的比如PUT DELETE就需要

使用res.setHeader(“Access-Control-Allow-Methods”,"*") 添加*就是指添加所有的方法。

请求有

简单请求

简单请求就是指GET POST HEAD 的方法请求,且HTTP头部信息为9个请求内的

预检请求

方式为上面三个之外的、请求头有自定义的、向服务器发送了application/json格式数据

预检请求就是在真实发送请求之前先发送了option请求进行预检,预检成功后在发送真实的请求。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值