当我将setHttpOnly和setSecure设置为true时,cookie为null

时间:2019-04-16 05:23:51

标签: spring-boot cookies jwt session-cookies

我有springboot应用程序,其中我将JWT设置为Cookies,如下所示,它在小时后过期。在这种情况下,setHttpOnlysetSecure为假。

Cookie sessionCookie = new Cookie("invsessionId", token);

一切正常,无论何时调用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");
            }

但是当我setHttpOnlysetSecure为true并进行API调用时,request.getCookies()始终为null。在这里发布之前,我进行了很多检查,无法找到解决方案。任何帮助将不胜感激。

0 个答案:

没有答案