需求说明
- 指定签名算法和密钥
- 指定payload
- 指定颁发时间和过期时间
定义密钥
byte[] key = "book".getBytes(StandardCharsets.UTF_8);
生成token
DateTime signTime = DateUtil.date();
String token = JWT.create()
.setIssuedAt(signTime)
.setExpiresAt(DateTime.of(LocalDateTimeUtil.of(signTime).plusMinutes(1)
.atZone(ZoneId.systemDefault())
.toInstant()
.toEpochMilli()))
.setPayload("userId", userInfo.getUserId())
.setPayload("bookStoreId", bookStoreId)
.setKey(key)
.setSigner("HS256", key)
.sign();
验证
boolean validate = JWT.of(key)
.setKey("book".getBytes(StandardCharsets.UTF_8))
.validate(0);