如何在java中执行jwt令牌验证

如何在java中执行jwt令牌验证,java,jwt,jwt-auth,Java,Jwt,Jwt Auth,我随身携带jwt令牌,并在下面的函数中传递。 只是我需要验证jwt令牌。 算法='HS256' void authenticate_web_socket_connection1(String jwtToken){ String secret="some random key"; Claims claims = Jwts.parser() .setSigningKey(DatatypeConverter.parseBase64Binary(secret))

我随身携带jwt令牌,并在下面的函数中传递。 只是我需要验证jwt令牌。 算法='HS256'

void  authenticate_web_socket_connection1(String jwtToken){
    String secret="some random key";
        Claims claims = Jwts.parser()
       .setSigningKey(DatatypeConverter.parseBase64Binary(secret))
       .parseClaimsJws(jwtToken).getBody();
获取以下错误: 错误状态记录器未找到log4j2配置文件。使用默认配置:仅将错误记录到控制台。
线程“main”io.jsonwebtoken.SignatureException中的异常:JWT签名与本地计算的签名不匹配。JWT有效性无法断言,不应被信任。

我使用此方法从令牌获取所有声明

private Claims getAllClaimsFromToken(String token) {

   return Jwts.parser().setSigningKey(secret).parseClaimsJws(token).getBody();

}

让我知道是否适合您。

我的密钥是从属性文件@Value(${jwt.secret}”)私有字符串secret中调用的,所以,我不知道DatatypeConverter是否是问题所在。我认为问题是另一个。()验证逻辑是正确的,但只是我对令牌的签名不正确。所以我的问题现在解决了