java - 我设置了cookie的max age,但是cookie依然在关闭游览器后消失了
迷茫
迷茫 2017-04-18 10:51:59
0
3
1364

我设置了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已经被成功添加到客户端了,时间是一年。

但是当我关闭了游览器,重新打开,访问http://localhost:8080,然后发现我的cookie不见了。见图2。

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全員に返信(3)
伊谢尔伦

問題は解決しました、cookie.setPath("/") が設定されました

いいねを押す +0
阿神

ブラウザの問題です。 。 。 。 。

いいねを押す +0
巴扎黑

cookie是由多个属性决定的,我猜max-ageはそのうちの1つにすぎません。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!