0

我正在尝试解析从客户端请求的 X-AUTH-TOKEN 标头中检索的 JJWT 令牌中的声明。问题是解析会抛出 SignatureException,尽管令牌已正确签名。

这是我的泽西过滤器:

@Provider
public class ClientClaimsFilter implements ContainerRequestFilter {

    @Override
    public void filter(ContainerRequestContext requestContext) throws IOException {
        String token = requestContext.getHeaderString("X-AUTH-TOKEN");
        if ((token != null) && (!token.isEmpty())) {
            Claims claims = Jwts.parse().setSigningKey(key).parseClaimsJws(token).getBody();
        }
    }
}

key像这样生成的地方String key = TextCodec.BASE64.encode(MacProvider.generateKey(SignatureAlgorithm.HS256).getEncoded()); 我验证了密钥在生成令牌和解析它时保持不变。但是解析时仍然存在 SignatureException。

4

0 回答 0