java解析jwt token
时间: 2023-10-27 13:05:28 浏览: 106
要解析JWT Token,可以使用Java JWT库。以下是一个简单的示例代码:
```java
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jwts;
public class JwtUtils {
public static Claims parseToken(String token, String secret) {
try {
Claims claims = Jwts.parser()
.setSigningKey(secret)
.parseClaimsJws(token)
.getBody();
return claims;
} catch (Exception e) {
return null;
}
}
}
```
上述代码中,`parseToken`方法接收两个参数:要解析的JWT Token和密钥。方法返回`Claims`对象,其中包含了JWT Token中的所有声明。如果解析失败,方法返回`null`。
要使用该工具类,可以按如下方式调用:
```java
String token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c";
String secret = "mysecretkey";
Claims claims = JwtUtils.parseToken(token, secret);
if (claims != null) {
String userId = claims.getSubject();
String username = claims.get("name", String.class);
Date issuedAt = claims.getIssuedAt();
}
```
以上代码中,我们通过调用`parseToken`方法解析JWT Token,并从`Claims`对象中获取声明的值。
阅读全文