您的位置:首页技术文章
文章详情页

java - 我设置了cookie的max age,但是cookie依然在关闭游览器后消失了

浏览:78日期:2024-01-16 09:54:13

问题描述

我设置了cookie的max age,但是cookie依然在关闭游览器后消失了。我的controller:

package com.jiaotong114.jiaotong.controller;@Controller@RequestMapping('/')public class CityIndex { @RequestMapping(value='/city/{cityName}', method = RequestMethod.GET)public String printHello(ModelMap model, @PathVariable('cityName') String cityName, HttpServletRequest request, HttpServletResponse response) { Cookie[] c = request.getCookies(); boolean isNew = true; for(int i = 0; i < c.length; i++) {if(c[i].getName().equals('cityName')) { c[i].setValue(cityName); c[i].setMaxAge(365 * 24 * 60 * 60); response.addCookie(c[i]); isNew = false;} } if(isNew) {Cookie cityNameCookie = new Cookie('cityName', cityName);cityNameCookie.setMaxAge(365 * 24 * 60 * 60);response.addCookie(cityNameCookie); } request.getSession().setAttribute('cityName', cityName); return 'index';}}

访问http://localhost:8080/city/sh...调用这个controller,可以从图片看到cookie已经被成功添加到客户端了,时间是一年。java - 我设置了cookie的max age,但是cookie依然在关闭游览器后消失了

但是当我关闭了游览器,重新打开,访问http://localhost:8080,然后发现我的cookie不见了。见图2。java - 我设置了cookie的max age,但是cookie依然在关闭游览器后消失了

问题解答

回答1:

问题解决了,设置了cookie.setPath('/')

回答2:

浏览器问题吧。。。。。

回答3:

cookie是由多个属性决定的,我猜max-age只是其中之一。

标签: java