原生 node 跨域问题
大佬们 原生的 node.js 配置跨域除了了几个常用的有什么需要注意的么 配置完 postman 跑没问题 请求头里请求头里也没问题 但是我用 vuecli 搭建的页面搭建的页面就报跨域 大佬们能帮忙出出招么
----------------------- 以下是精选回复-----------------------
答:vue 前端的话直接走代理就行了,跨域指的是浏览器内你访问的后台域名和正在使用的域名不一样就会报错
答:跨域请求带 cookie 的话,Access-Control-Allow-Origin ,这个字段不能是*,必须是具体的,例:localhost:8080 。
Access-Control-Allow-Credentials 这个字段要为 true ,还有 options 请求要返回 204 ,浏览器现在不显示这个请求了,前段时间也碰到跨域的坑,就是 options 的问题,抓包才找到问题来源。 顺便附上 nodejs 代码:
res.header("Access-Control-Allow-Origin", req.headers.origin);
res.header("Access-Control-Allow-Credentials", 'true');
res.header("Access-Control-Allow-Headers", "Content-Type,Content-Length, Authorization, Accept,X-Requested-With");
res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
if(req.method=='OPTIONS'){
res.writeHead(204)
}
0条评论