跨域导致cookie丢失。
使用axois发送请求,在服务器端配置了cors:
router.use("/", (req, res, next) => {
console.log(req.headers.origin)
// req.headers.origin
res.header("access-control-allow-origin", req.headers.origin)
res.header("access-control-allow-headers", "content-type")
res.header('Access-Control-Allow-Credentials', true)
res.header("Access-Control-Allow-Methods", "PUT,POST,GET,DELETE,OPTIONS");
next()
})
前端的axois配置:
app.config.globalProperties.$http = axios.create({
baseURL: 'http://127.0.0.1:3000',
withCredentials: true,
})
网上查询了相关资料说进行跨域请求需要在前端发送的请求头中配置withCredentials为true,后端在响应头中加入res.header('Access-Control-Allow-Credentials', true)且access-control-allow-origin不能为*,即使这个样子,axois进行跨域请求还是会丢失cookie