package com.bihu.utils;
import com.auth0.jwt.JWT;
import com.auth0.jwt.JWTCreator;
import com.auth0.jwt.algorithms.Algorithm;
import com.auth0.jwt.interfaces.DecodedJWT;
import com.auth0.jwt.interfaces.Verification;
import java.nio.charset.StandardCharsets;
import java.util.Calendar;
import java.util.Date;
import java.util.UUID;
public class JwtUtils {
//加密盐
private final static String yan = "xxxxx";
public static String getToken(String id){
//过期时间
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE,1);
//创建Token
JWTCreator.Builder builder = JWT.create();
String token = builder.withJWTId(UUID.randomUUID().toString())
.withClaim("id", id)
.withIssuedAt(new Date())
.withExpiresAt(calendar.getTime())
.sign(Algorithm.HMAC512(yan.getBytes(StandardCharsets.UTF_8)));
return token;
}
public static DecodedJWT verificationToken(String token) {
DecodedJWT decodedJWT = JWT.require(Algorithm.HMAC512(yan.getBytes(StandardCharsets.UTF_8))).build().verify(token);
return decodedJWT;
}
}