【问题标题】:Can't read cookie except in IE除 IE 外无法读取 cookie
【发布时间】:2013-08-28 19:54:49
【问题描述】:

我可以在 firebug 中读取以下 cookie:

FIXXLY_ID=Niflj34FiodrgRTk0MWQtMWQzMTYxNDE5MTVh|1377513181|4f983fa4ca9c0554hfd6dcb24d1a3188a9d3fa2;到期=格林威治标准时间 2013 年 9 月 25 日星期三 10:33:01;路径=/;域=mysub.mydomain.pt

请求来自http://mysub.mydomain.com/myapp/#/login

但是当我使用 FF、Chrome、Safari 时,我无法使用 javascript 读取 cookie。只有 IE 有效。我尝试使用 document.cookie、jquery 的 $.cookie()angularjs-cookies 读取 cookie。 cookie 不是 HttpOnly。

我尝试将 cookie 域设置为 .mydomain.ptmydomain.pt
我还尝试设置Path=/myapp
我在 StackOverflow 中阅读了其他帖子,但找不到答案。

cookie 被设置在不同的服务器/域上!

我在这里错过了什么?任何人?谢谢。

【问题讨论】:

  • 它是否显示在document.cookie 中?设置 cookie 后页面是否重新加载?有时,在 AJAX 请求期间设置的 cookie 不会显示在原始页面上,除非之后重新加载。
  • 如果我使用 IE,它只会显示在 document.cookie 中:|
  • 我做了一个 AJAX 请求(使用 angularjs),服务器设置了 cookie 并将其发回。页面不会随时重新加载。
  • 重新加载后是否有效?
  • 您是否将其他浏览器配置为接受第三方 cookie?

标签: javascript firefox cookies


【解决方案1】:

解决了

问题出在使用的端口上。 发生的事情是向端口 8081 发出请求(有一个代理将请求转发到最终目的地,侦听端口 8081),但显然只有 IE 对 http 请求的该端口没有问题。所以我们改变了我们的 nginx 服务器(http://mysub.mydomain.com),将请求重定向到 80 端口。

我知道在我的问题中我没有说任何关于端口或代理的内容,但那是因为我对 cookie 了解不够,并且认为这与它没有任何关系——我的错。 对此感到抱歉。无论如何,这就是我的问题的解决方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-16
    • 2019-04-24
    相关资源
    最近更新 更多