使用Hutool中的JwtUtil类验证token
时间: 2024-04-30 09:21:53 浏览: 300
JWT 生成Token及验证
好的,首先需要在项目中引入Hutool的依赖。可以在 Maven 中添加以下依赖:
```xml
<!-- Hutool工具类 -->
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.7.10</version>
</dependency>
```
然后可以使用以下代码验证token:
```java
import cn.hutool.core.util.StrUtil;
import cn.hutool.jwt.JWT;
import cn.hutool.jwt.JWTException;
import cn.hutool.jwt.JWTUtil;
// token字符串
String token = "xxx.xxx.xxx";
try {
// 验证token
JWT jwt = JWTUtil.parse(token);
if (jwt.isExpired()) {
// token已过期
System.out.println("token已过期");
} else {
// 获取payload中的数据
String userId = jwt.getPayload("userId", String.class);
// ...其他操作
}
} catch (JWTException e) {
// token格式不正确或已失效
System.out.println("token无效");
}
```
其中,`JWTUtil.parse(token)` 方法用于解析 token,返回一个 `JWT` 对象。`jwt.isExpired()` 方法用于判断 token 是否已过期。如果 token 未过期,可以使用 `jwt.getPayload(key, clazz)` 方法获取 payload 中的数据。其中,`key` 是键名,`clazz` 是值类型。如果键名不存在或值类型不匹配,将会抛出异常。
阅读全文