2010-05-16 114 views
3

我创建一个JSP脚本,它位于一个cookie:如何坚持一个cookie?

www.myproject.com/login/index.jsp 

,如果我重新启动浏览器,然后导航那里,所有的作品很好,我能看到的cookie仍然存在。如果我导航到:

www.myproject.com 

我没有看到cookie。我是否需要在Cookie路径或域中设置某些内容,以使Cookie可以在整个[myproject.com]域中看到(我只想从用户可能使用的任何子路径访问cookie)。我创建像饼干:

Cookie c = new Cookie("thisisatest", "foo"); 
c.setMaxAge(60 * 24 * 3600); 
response.addCookie(c); 

感谢

回答

6

你确实需要设置Cookie路径。这默认为当前路径。你可以通过Cookie#setPath()来完成。

Cookie c = new Cookie("thisisatest", "foo"); 
c.setMaxAge(60 * 24 * 3600); 
c.setPath("/"); 
response.addCookie(c); 
+0

谢谢,这工作。 – user246114 2010-05-16 16:59:09

+0

不客气。 – BalusC 2010-05-16 17:10:28

0

默认情况下,饼干只返回给救了他们的主机。

尝试域设置为一个cookie

离店:http://docstore.mik.ua/orelly/java-ent/servlet/ch07_04.htm

+0

(子)域在这里不是问题。 – BalusC 2010-05-16 16:54:26

+0

将Cookie标头的路径属性设置为/。 “/”表示适用于所有网站 – SIA 2010-05-16 17:01:54

+0

域名/主机!=路径:) – BalusC 2010-05-16 17:09:36