jwt入门

导入maven依赖

jdk8以上需要额外依赖

1
2
3
4
5
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>0.9.1</version>
</dependency>

签发

获得builder

Jwts.builder()

塞东西

  • setheaderParam([key], [value]) 设置头
  • claim([kay], [value]) 设置载荷
  • setSubject([sub]) 设置sub

**保留字 **

  • ISSUER = “iss”; // 哪个人签的
  • SUBJECT = “sub”; // 主题
  • AUDIENCE = “aud”; // 签给谁
  • EXPIRATION = “exp”; // 过期时间
  • NOT_BEFORE = “nbf”; // 生效时间
  • ISSUED_AT = “iat”; // 签发时间
  • ID = “jti”; // 唯一标识

签名

signWith方法

整合

compact方法

解密

获取对应key的value

1
Jwts.parser().setSigningKey("密钥").parseClaimsJws("token").getBody().get("key");