对于一个项目来说,里面的API接口会有很多,但通常都是需要授权访问的,常见的做法之一是通过用户登录判断用户身份的合法性,然后利用用户信息生成token,以后带着token来访问接口,而生成token的方式之一就是jwt(JSON Web Token)。
关于JWT的含义和结构,网上介绍很多,不再赘述。可以参考:https://jwt.io/introduction/。这里只做一个简单的demo。
1.使用jwt时首先需要生成token和解析token的方法
public class JWTTokenUtils {
private static final String KEY = "2019.09.15";
//生成token
public static String generateToken(Object payload){
return Jwts.builder()
.setSubject(payload.toString())
.setExpiration(new Date(System.currentTimeMillis() + 10*60*1000))
.signWith(SignatureAlgorithm.HS256, KEY)
.compact();
}
//解析token
public static String parseToken(String jwt){
return Jwts.parser()
.setSigningKey(KEY)