【发布时间】:2021-12-11 06:04:24
【问题描述】:
我在本地测试我的网络应用时遇到问题。 我在请求响应中设置了 cookie(方法如下):
const token = createToken(user._id);
res.cookie("jwt", token, { httpOnly: true, maxAge: maxAge, });
res.status(201).json({ user: user._id });
return res;
但是我在 React Client 中执行以下请求时遇到了关于同域策略的错误:
axios.post(`${process.env.REACT_APP_API_URL}api/user/login`, {
email: email,
password: password,
},
{
withCredentials: true
})
.then((res) => {
if (res.data.errors) {
//Show errors
}
})
.catch((err) => {
console.log(err);
});
我尝试使用参数 withCredentials 执行它:false
请求有效,但未存储 cookie 但是我在我的请求的响应中设置了 Cookie
这是我的 CORS 选项:
const corsOptions = {
origin: process.env.CLIENT_URL,
credentials: true,
allowedHeaders: ["sessionId", "Content-Type"],
exposedHeaders: ["sessionId"],
methods: "GET,HEAD,PUT,PATCH,POST,DELETE",
preflightContinue: false
};
【问题讨论】:
标签: javascript node.js reactjs express