Cookieがまだ存在しない場合は、新しいCookieを作成する必要があります。Cookieがすでに存在する場合は、それを上書きするのではなく、返すだけです。
Cookieが存在するかどうかを確認するにはどうすればよいですか?APIを見てきましたjavax.servlet.http.Cookie
が、手がかりが見つかりませんでした。
既存のCookieを取得して検証するにはどうすればよいですか?
によってすべてのCookieを取得できますHttpServletRequest#getCookies()
。
Cookie[] cookies = request.getCookies();
if (cookies != null) {
for (Cookie cookie : cookies) {
String name = cookie.getName();
String value = cookie.getValue();
// ...
}
}
これには、すでに有効な(有効期限が切れていない)Cookieのみが含まれていることに注意してください。つまり、ブラウザはリクエストに沿って期限切れのCookieを送信しません。