设置
我已经使用 create-react-app 设置了一个前端环境。在这种环境中,我使用 Axios 向我的 Node JS Express 后端服务器 /login 端点发出 POST 请求。我使用 express-sessions 设置会话中间件并将会话存储在 Redis 中。我目前在本地主机上运行所有这些。
环境
React App - http://localhost:3005/kp(注意:该服务在 http://localhost:3005 上运行,但是所有路由都包含 /kp)
快速后端 - http://localhost:5001
Redis - http://localhost:6379
什么有效
当前端向后端发送请求时,Express 服务器会执行它的操作并对用户进行身份验证;它将用户名存储在 req.session.username 中(这只是一个测试),Redis 控制台显示键值存储成功,前端网络选项卡显示 200 状态,带有 Set-Cookie 响应标头和一个选项卡显示 cookie(下面的屏幕截图)。
问题
一切似乎都运行良好,但 cookie 未在浏览器中设置。我刷新了页面,再试了很多次,但它不会在任何浏览器(谷歌 Chrome 和 Safari)中设置 cookie。我感到很沮丧,因为 Chrome 似乎承认 Set-Cookie 存在,但出于某种原因忽略了它。
我试过的
阿克西奥斯
后端