El envío de JWT simbólico en el cuerpo de la respuesta de Java primavera

Hamza:

Puedo enviar la señal de JWT en la cabecera, pero el cliente lo necesita en el cuerpo de la respuesta, ¿cómo puedo ponerlo en la respuesta:

    @ Override 
    protegido successfulAuthentication void ( 
            HttpServletRequest solicitud, HttpServletResponse respuesta, cadena FilterChain, Autenticación authResult) 
            lanza IOException, ServletException {

User springUser = (User) authResult.getPrincipal(); String jwt = Jwts.builder() .setSubject(springUser.getUsername()) .setExpiration(new Date(System.currentTimeMillis()+SecurityConstants.EXPIRATION_TIME)) .signWith(SignatureAlgorithm.HS256, SecurityConstants.SECRET) .claim("roles",springUser.getAuthorities()) .compact(); response.addHeader(SecurityConstants.HEADER_STRING, SecurityConstants.TOKEN_PREFIX+jwt); }

Tengo que poner el signo en la respuesta

El Sr. Skip:

Si he entendido correctamente sólo tiene que crear un cuerpo de la respuesta

response.setContentType("application/json");
    response.setCharacterEncoding("UTF-8");
    response.getWriter().write(
            "{\"" + SecurityConstants.HEADER_STRING + "\":\"" + SecurityConstants.TOKEN_PREFIX+jwt + "\"}"
    );

Echar un vistazo a ¿Cómo se devuelve un objeto JSON desde un servlet de Java

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=120339&siteId=1
Recomendado
Clasificación