JJWT签发与认证token
- pom文件
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>0.9.0</version>
</dependency>
2.创建jwt
//当前时间
long currentTimeMillis = System.currentTimeMillis();
currentTimeMillis+=1000000L;
Date date = new Date(currentTimeMillis);
JwtBuilder builder= Jwts.builder()
.setId("666") //设置唯一编号
.setSubject("小康")//设置主题 可以是JSON数据
.setIssuedAt(new Date())//设置签发日期
.setExpiration(date)//设置过期时间
.claim("roles","admin")//设置角色
.signWith(SignatureAlgorithm.HS256,"xk");//设置签名 使用HS256算法,并设置SecretKey(字符串)
//构建 并返回一个字符串
String compactJwt = builder.compact();
3.解析jwt
Claims claims = Jwts.parser().setSigningKey("xk").parseClaimsJws(compactJwt).getBody();
System.out.println(claims);
- 运行打印结果
- {jti=666, sub=xk1, iat=1557904181,exp=1557805802,roles=admin}