我正在尝试创建一个cookie并设置其最大年龄。 我正在使用set Comment并设置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。 为什么会这样?
答案 0 :(得分:0)
这是预期的行为。考虑到 max-age 适用于客户端,但客户端只会将配对名称值发送到服务器。
因此,如果您将“3600”设置为您的 cookie 并将其添加到响应中,您应该会在客户端的 cookie 上看到它,但是包含在下一个请求中的 cookie 可能会显示 -1 , 在服务器端。
有关详细信息,请参阅 RFC6265 4.2.2 。