如果 cookie 尚不存在,我必须创建一个新 cookie。如果 cookie 已经存在,那么我不应该覆盖它,而只是返回它。
如何验证 cookie 是否存在?我看过javax.servlet.http.Cookie
API,但找不到任何线索。
如何检索和验证现有 cookie?
您可以通过 获取所有 cookie HttpServletRequest#getCookies()
。
Cookie[] cookies = request.getCookies();
if (cookies != null) {
for (Cookie cookie : cookies) {
String name = cookie.getName();
String value = cookie.getValue();
// ...
}
}
请注意,这已仅包含有效(未过期)的 cookie。浏览器也不会随请求发送过期的cookies。