【问题标题】:Cookie not set at local development Express REST API + react SPACookie 未在本地开发 Express REST API + react SPA 中设置
【发布时间】:2021-04-04 13:18:59
【问题描述】:

我已经用谷歌搜索了一段时间,但仍然没有运气。我在 localhost:3000 使用 nodeJS + express 运行 REST api。在同一台计算机上,我在 127.0.0.1:3001 上运行前端。从我的后端 API 我收到了 set-cookie 标头。但我的浏览器并未将其视为 cookie。因此,应用程序 -> Cookies -> http://127.0.0.1:3001 为空。我尝试过 chrome、safari 和 firefox。在 chrome 中,我尝试关闭这些标志:

  • SameSite 默认 cookie
  • 启用删除 SameSite Cookie 而无需
  • SameSite 必须是安全的

我从谷歌尝试过的建议是:

  • 使用 127.0.0.1 代替 localhost
  • 在 chrome 中禁用标志
  • 改用火狐
  • 在 axios 请求中包含凭据:withCredentials: true
  • 在 cookie 选项下没有设置域

当我部署到生产环境时,一切都按预期工作。似乎有很多人遇到这个问题,但我找到的解决方案都没有奏效。

响应头:

【问题讨论】:

  • 如果 cookie 是由 localhost:3000 发出的,那么您将不会在 localhost:3001 下找到它。这是完全正常的和预期的。

标签: node.js express cookies axios setcookie


【解决方案1】:

原来在域下我包含了端口。简单地使用域:“localhost”就可以了。起初我有域:“localhost:3001”

【讨论】:

    猜你喜欢
    • 2021-07-22
    • 2019-07-17
    • 1970-01-01
    • 2020-07-21
    • 2015-04-19
    • 2015-07-16
    • 2019-08-02
    • 2017-05-05
    • 1970-01-01
    相关资源
    最近更新 更多