1.cookie相關知識
https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies
https://javascript.ruanyifeng.com/bom/cookie.html#toc5
2.cookie相關操作
2.1.獲取
通過HttpServletRequest查詢
private String getCookie(HttpServletRequest request,String name){ Cookie[] cookies = request.getCookies(); if(cookies != null){ for(Cookie cookie : cookies){ if(cookie.getName().equals(name)){ return cookie.getValue(); } } } return null; }
通過@CookieValue查詢
@RequestMapping("/a/a") String home1(@CookieValue(name = "token", required = false) String token) { System.err.println(token); return ""; }
2.2.新增
Cookie c = new Cookie("token", "b"); response.addCookie(c);
2.3.修改
如果服務器想改變一個早先設置的 Cookie,必須同時滿足四個條件:Cookie 的key
、domain
、path
和secure
都匹配。
Cookie c = new Cookie("token", "a"+1); response.addCookie(c);
2.4.刪除
將cookie的Max-Age設置為0
Cookie c = new Cookie("token", "a"+1); c.setMaxAge(0); response.addCookie(c);