У меня есть приложение Springboot, в котором я устанавливаю JWT на Cookies, как показано ниже, срок действия которого истекает через час. В этом случае setHttpOnly
и setSecure
ложно.
Cookie sessionCookie = new Cookie("invsessionId", token);
Eveything работает нормально. Когда выполняется API-вызов, я проверяю токен, получая доступ к токену через заголовок cookie, как показано ниже
Cookie[] cookies = request.getCookies();
if (cookies == null || cookies.length < 1) {
throw new AuthenticationServiceException("Invalid Token");
}
Cookie sessionCookie = null;
for (Cookie cookie : cookies) {
if ((jwtConfig.getPrefix()).equals(cookie.getName())) {
sessionCookie = cookie;
break;
}
}
// TODO: move the cookie validation into a private method
if (sessionCookie == null || StringUtils.isEmpty(sessionCookie.getValue())) {
throw new AuthenticationServiceException("Invalid Token");
}
Но когда я setHttpOnly
и setSecure
вернусь и сделаю вызов API, request.getCookies()
всегда будет null
. Я проверяю много перед публикацией здесь, не в состоянии найти решение. Любая помощь будет оценена.