java 实现jwt解码
时间: 2023-10-20 16:28:33 浏览: 142
要实现JWT的解码,需要使用Java JWT库。以下是一个简单的示例代码:
```java
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jwts;
public class JwtDecoder {
public static void main(String[] args) {
String jwt = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c";
Claims claims = Jwts.parser()
.setSigningKey("secretkey")
.parseClaimsJws(jwt)
.getBody();
System.out.println("Subject: " + claims.getSubject());
System.out.println("Name: " + claims.get("name"));
System.out.println("Issued At: " + claims.getIssuedAt());
}
}
```
在上面的示例代码中,我们首先定义了一个JWT字符串。然后,我们使用`Jwts.parser()`方法创建一个JWT解析器,并使用`setSigningKey()`方法设置JWT签名密钥。最后,我们使用`parseClaimsJws()`方法解析JWT字符串,并使用`getBody()`方法获取JWT的主体内容。在本例中,我们从Claims对象中获取了主题、名称和发行时间,并将它们打印到控制台。
阅读全文