客户:
<a href="http://localhost:3001/user/login">Login</a>
服务器:
const token = jwt.sign({ broadcasterId: user.twitchId }, process.env.JWT_SECRET);
res.writeHead(301, {
"Location": "http://localhost:3000",
"Set-Cookie": [`jwt=${token}; HttpOnly`],
});
res.end();
我希望上面的代码沿着响应返回Cookie,但客户端上没有设置Cookie。
对服务器(端口3001)使用express.js,对客户端(端口3000)使用react。
我不知道为什么,但是直接从浏览器调用API(http://localhost:3001/user/login)实际上包含了一个想要的jwt cookie。
1条答案
按热度按时间d6kp6zgx1#
如果您将cookie设置为HttpOnly,则无法使用客户端JS访问它:
https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies#restrict_access_to_cookies