tlias管理系统-JWT令牌生成与校验
This commit is contained in:
@@ -69,6 +69,12 @@
|
||||
<artifactId>jaxb-runtime</artifactId>
|
||||
<version>2.3.3</version>
|
||||
</dependency>
|
||||
<!--令牌JWT依赖-->
|
||||
<dependency>
|
||||
<groupId>io.jsonwebtoken</groupId>
|
||||
<artifactId>jjwt</artifactId>
|
||||
<version>0.9.1</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<dependencyManagement>
|
||||
|
||||
@@ -1,8 +1,14 @@
|
||||
package com.inmind;
|
||||
|
||||
import io.jsonwebtoken.Claims;
|
||||
import io.jsonwebtoken.Jwts;
|
||||
import io.jsonwebtoken.SignatureAlgorithm;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
@SpringBootTest
|
||||
@@ -26,4 +32,29 @@ class TliasWebManagementApplicationTests {
|
||||
System.out.println(ossAccessKeyId);
|
||||
}
|
||||
|
||||
//生成令牌
|
||||
@Test
|
||||
void testJWT(){
|
||||
//1.通过工具类Jwts生成jwt令牌,设置签名算法和秘钥
|
||||
Map<String, Object> claims = new HashMap<>();
|
||||
claims.put("id", "1");
|
||||
claims.put("name", "wangwu");
|
||||
String jwt = Jwts.builder().signWith(SignatureAlgorithm.HS256, "inmind")
|
||||
.setClaims(claims)//设置载荷(自定义数据,用户信息数据)
|
||||
// .setExpiration(new Date(System.currentTimeMillis() + 60 * 60 * 1000))//设置过期时间(有效时间为1小时)
|
||||
.setExpiration(new Date(System.currentTimeMillis()))//设置过期时间(有效时间为1小时)
|
||||
.compact();
|
||||
System.out.println(jwt);
|
||||
}
|
||||
|
||||
//解析令牌
|
||||
@Test
|
||||
void testParseJWT(){
|
||||
Claims claims = Jwts.parser()
|
||||
.setSigningKey("inmind")//设置签名秘钥(解析JWT时,最重要的就是输入正确的签名秘钥)
|
||||
.parseClaimsJws("eyJhbGciOiJIUzI1NiJ9.eyJuYW1lIjoid2FuZ3d1IiwiaWQiOiIxIiwiZXhwIjoxNzYwNDIzMDQ1fQ.b1IIm_M-chlu-T4J_HQOvic1GILcw1aWaYX2iHa2PM4")
|
||||
.getBody();
|
||||
System.out.println(claims);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user