JavaWeb+Vue3前后端分离项目使用JWT技术
后端部分
1、首先导入JWT的jar包或是添加Maven依赖,这里我使用的是Maven
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>0.9.1</version>
</dependency>
2、在javaweb项目的utils创建JWTUtil
@Slf4j
public class JWTUtil {
/**
* token 过期时间,正常是1天,方便测试我们改为10
*/
private static final long EXPIRE = 1000 * 60 * 60 * 24 * 10;
/**
* 加密的秘钥
*/
private static final String SECRET = "fun.beauy";
/**
* 令牌前缀
*/
private static final String TOKEN_PREFIX = "testJwt";
/**
* subject
*/
private static final String SUBJECT = "beau";
/**
* 根据用户信息,生成令牌
* @param loginUser
* @return
*/
public static String geneJsonWebToken(LoginUser loginUser) {
if (loginUser == null) {
throw new NullPointerException("loginUser对象为空");
}
String token = Jwts.builder().setSubject(SUBJECT)
//payload
.claim("id", loginUser.getId())
.claim("name", loginUser.getUsername())
.setIssuedAt(new Date())
.setExpiration(new Date(System.currentTimeMillis() + EXPIRE)