2012-05-27 33 views
5

$ .cookie未读取之前由服务器响应设置的cookie。

我可以阅读使用$ .cookie()设置的cookie。

我可以看到Firefox的Web Developer附加设置的所有域cookie。
此外,服务器端可以看到请求cookie,所以浏览器肯定有它们。

我已经尝试过期时间无济于事。

+0

如果您彻底比较cookie,该怎么办?如果他们的行为不同 - 有一些差异 – zerkms

回答

6

的问题是,在服务器端与发送的HttpOnly饼干设置如下所述:发送这样http://en.wikipedia.org/w/index.php?title=HTTP_cookie#HttpOnly_cookie

Cookie不是直通的document.cookie访问。这通常用于帮助保护cookie值免受您网站上可能发生的XSS攻击。

编辑:您没有提及您在服务器端使用哪种技术来设置Cookie。如果你正在使用PHP,这个链接列出了可能的途径中HTTPOnly标志可以设置:

https://www.owasp.org/index.php/HttpOnly#Using_PHP_to_set_HttpOnly

1

UPDATE:我错在我原来的答复(见下文)...页进一步下跌的路径树可以读取上层cookie,所以路径不必完全匹配。留下我原来的答案,以防别人犯同样的错误。我的问题是由我从JavaScript设置一个cookie,然后尝试修改cookie服务器端造成的。服务器以路径“/”为目标的cookie,所以具有路径“/ mypages”的cookie没有改变。

$ .cookie只能读取当前文档路径下的cookie,所以如果你的网页是> mysite.com/mypages/mypage.aspx,服务器将设置路径“/”设置cookie时, >但$ .cookie会尝试从路径“/ mypages”中读取并且无法读取cookie。我只是自己跑过这个问题。如果你没有这种不同的路径,那么这可能不是你的问题。