//JWT 默认过期时间,3600L,单位秒
/**
2 * 生成JWT Token
3 *
4 * @param username 用户名
5 * @param salt 盐值
6 * @param expireDuration 过期时间和单位
7 * @return token
8 */
9 public static String generateToken(String username, String salt, Duration expireDuration) {
10 try {
11 // 过期时间,单位:秒
12 Long expireSecond;
13 // 默认过期时间为1小时 3600L 单位秒
14 if (expireDuration == null) {
15 expireSecond = "3600L";
16 } else {
17 expireSecond = expireDuration.getSeconds();
18 }
19 Date expireDate = DateUtils.addSeconds(new Date(), expireSecond.intValue());
20 // 生成token
21 Algorithm algorithm = Algorithm.HMAC256(salt);
22 String token = JWT.create()
23 .withClaim(CommonConstant.JWT_USERNAME, username)
24 // jwt唯一id
25 .withJWTId(UUIDUtil.getUuid())
26 // 签发人
27 .withIssuer("")
28 // 主题
29 .withSubject("")
30 // 签发的目标
31 .withAudience("")
32 // 签名时间
33 .withIssuedAt(new Date())
34 // token过期时间
35 .withExpiresAt(expireDate)
36 // 签名
37 .sign(algorithm);
38 return token;
39 } catch (Exception e) {
40 log.error("generateToken exception", e);
41 }
42 return null;
43 }
生成JWT Token
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...