【问题标题】:Browser doesn't set cookie, despite of response header浏览器没有设置 cookie,尽管有响应头
【发布时间】:2016-07-10 16:59:07
【问题描述】:

我有一个带有 REST-API(用 PHP 编写)的 AngularJS Web 应用程序。我的 JS 应用程序有一个用于登录的“POST”方法。

  1. 我“发布”我的用户名并登录到 API
  2. 发帖成功,响应头有'set-cookie'

我还可以通过 Chrome 开发工具在响应中看到 cookie:

但是浏览器没有设置它。有人对此有建议或解决方案吗?

编辑:我的 POST 方法是通过 jQuery 进行的 Ajax 调用。

【问题讨论】:

  • 那么...您的 AJAX 调用设置了会话?
  • 你能发布你的实际代码吗?
  • 好的,抱歉,我发现了错误。我正在我的本地主机上开发(通过 IP 127.0.0.1,因此设置了 cookie),但我得到的 cookie 仅对特定域名有效。

标签: php angularjs cookies


【解决方案1】:

您不能在 Chrome 中的本地主机上设置 cookie。

1) 尝试使用映射到本地主机的其他域,例如 example.com 您可以编辑您的主机文件并在此处添加“127.0.0.1 example.com”

2) 设置 cookie 域 = "";

3) 设置 cookie 最大年龄。

4) 检查您的浏览器 cookie 设置,您是否也添加了任何自定义 cookie 规则

之后,如果 chrome 心情好,它会设置那个 cookie。

【讨论】:

    猜你喜欢
    • 2017-12-17
    • 2019-05-16
    • 2019-04-26
    • 2020-10-07
    • 2016-11-19
    • 2018-08-29
    • 2021-02-14
    • 2021-11-30
    • 1970-01-01
    相关资源
    最近更新 更多