【问题标题】:How to persist a cookie?如何持久化 cookie?
【发布时间】:2011-02-20 03:14:54
【问题描述】:

我正在一个 jsp 脚本中创建一个 cookie,它位于:

www.myproject.com/login/index.jsp

如果我重新启动浏览器并在那里导航,一切正常,我可以看到 cookie 仍然存在。如果我导航到:

www.myproject.com

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

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

谢谢

【问题讨论】:

    标签: java jsp servlets cookies


    【解决方案1】:

    默认情况下,cookie 只返回给保存它们的主机。

    尝试将域设置为 cookie

    签出:http://docstore.mik.ua/orelly/java-ent/servlet/ch07_04.htm

    【讨论】:

    • (子)域不是这里的问题。
    • 设置cookie头的路径属性为/。 “/”表示适用于所有网站
    【解决方案2】:

    您确实需要设置 cookie 路径。这默认为当前路径。您可以通过Cookie#setPath() 进行操作。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-06-02
      • 2016-06-24
      • 2012-08-09
      • 1970-01-01
      • 2013-05-14
      • 2017-04-29
      • 2015-09-14
      相关资源
      最近更新 更多