登录接口创建token,拦截器解析token取用户

发布时间 2023-11-29 13:24:14作者: 杨吃羊

1、登录接口创建token

 1.1 登录接口逻辑:根据用户名,密码(前端传了的是加密后的密码),查询用户,如果查不到返回提示,如果能查到,根据用户名,id等非保密字段生成token并返回。

  1.2 生成token代码:

public StringcreateToken(Map<String, Object> data) {
        Date now = new Date();
        JwtBuilder accessTokenBuilder = Jwts.builder().setId(UUIDUtils.getUUID()) //jwt的唯一标识
                .setIssuedAt(now)//签发时间
                .setNotBefore(now) //在此时间之前不可用
                .setExpiration(new Date(now.getTime() + jwtConfigProperties.getAccessTokenExpires() * 1000))//过期时间
                .addClaims(data); //自定义内容(载荷)
        String accessToken =accessTokenBuilder.signWith(Keys.hmacShaKeyFor(Decoders.BASE64.decode(key))).compact();
      return accessToken ;
}