【问题标题】:Maxage of my cookie is reset to -1我的 cookie 的 Maxage 重置为 -1
【发布时间】:2018-10-28 01:44:36
【问题描述】:

我正在尝试创建一个 cookie 并设置它的最大年龄。 我正在使用 set Comment 和 set Max Age 方法进行设置。

HttpSession browserSession = httpRequest.getSession();
Cookie cookie = new Cookie("SESSION", browserSession.getId());
cookie.setComment("test");
cookie.setMaxAge(Integer.MAX_VALUE);     
httpResponse.addCookie(cookie);

但是当我从 Request 中获取 cookie 然后我对其进行调试时,comment 为 null 并且 cookie 的最大年龄为 -1,我将 cookie 名称设置为 SESSION。 为什么会这样?

【问题讨论】:

标签: java spring-mvc session cookies


【解决方案1】:

这是预期的行为。考虑到 max-age 适用于客户端,但客户端只会向服务器发送对名称值。

因此,如果您将 cookie 设置为“3600”并将其添加到响应中,您应该会在客户端的 cookie 上看到它,但下一个请求中包含的 cookie 可能会显示 -1 , 在服务器端。

更多信息请参见RFC6265 4.2.2

【讨论】:

    猜你喜欢
    • 2016-07-15
    • 1970-01-01
    • 2017-07-21
    • 2018-05-31
    • 1970-01-01
    • 2013-07-15
    • 2014-06-05
    • 2012-12-20
    • 1970-01-01
    相关资源
    最近更新 更多