我正在尝试读取从 Google OpenID Connect 的 Id 令牌生成的 Json Web 令牌(JWT),以获取声明并使用jjwt库进行验证。我已经尝试了几种方法来使用下面的代码修复它。
String publicKeyFromJsonFile = "-----BEGIN PUBLIC KEY-----xxxxxxx-----END PUBLIC KEY-----"
Claims claims = Jwts.parser()
.setSigningKey(publicKeyFromJsonFile)
.parseClaimsJws(jwt).getBody();
System.out.println(claims);
Run Code Online (Sandbox Code Playgroud)
但我收到此错误:
java.lang.IllegalArgumentException: Key bytes can only be specified for HMAC signatures. Please specify a PublicKey or PrivateKey instance
Run Code Online (Sandbox Code Playgroud)
请遵循什么是正确的方法?