jwt使用工具类

导入jwt依赖

   <dependency>
            <groupId>com.auth0</groupId>
            <artifactId>java-jwt</artifactId>
            <version>3.11.0</version>
        </dependency>

工具类代码

import com.auth0.jwt.JWT;
import com.auth0.jwt.algorithms.Algorithm;
import com.auth0.jwt.interfaces.DecodedJWT;

import java.util.Calendar;
import java.util.Map;

/**
 * jwt相关工具类
 */
public class jwtUtils {

    public static final String key="@##$WED";

;    /*
    token获取
     */
    public static String getToken(Map<String,String> map){
        Calendar calendar=Calendar.getInstance();
        calendar.add(Calendar.SECOND,100); //设置一百秒时长
        String token = JWT.create()
                .withClaim("map", map)  //设置playload,键值对
                .withExpiresAt(calendar.getTime())//设置超时时间
                .sign(Algorithm.HMAC512(key));//设置加密算法以及签名
        return token;
    }


    /*
    token的验证以及获取内置信息
     */
    public static DecodedJWT verify(String token){
        return JWT.require(Algorithm.HMAC512(key)).build().verify(token);
    }
}

posted @ 2020-11-25 15:35  知南而北游  阅读(248)  评论(0)    收藏  举报