tlias管理系统-JWT令牌生成与校验
This commit is contained in:
@@ -69,6 +69,12 @@
|
|||||||
<artifactId>jaxb-runtime</artifactId>
|
<artifactId>jaxb-runtime</artifactId>
|
||||||
<version>2.3.3</version>
|
<version>2.3.3</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<!--令牌JWT依赖-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>io.jsonwebtoken</groupId>
|
||||||
|
<artifactId>jjwt</artifactId>
|
||||||
|
<version>0.9.1</version>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<dependencyManagement>
|
<dependencyManagement>
|
||||||
|
|||||||
@@ -1,8 +1,14 @@
|
|||||||
package com.inmind;
|
package com.inmind;
|
||||||
|
|
||||||
|
import io.jsonwebtoken.Claims;
|
||||||
|
import io.jsonwebtoken.Jwts;
|
||||||
|
import io.jsonwebtoken.SignatureAlgorithm;
|
||||||
import org.junit.jupiter.api.Test;
|
import org.junit.jupiter.api.Test;
|
||||||
import org.springframework.boot.test.context.SpringBootTest;
|
import org.springframework.boot.test.context.SpringBootTest;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.UUID;
|
import java.util.UUID;
|
||||||
|
|
||||||
@SpringBootTest
|
@SpringBootTest
|
||||||
@@ -26,4 +32,29 @@ class TliasWebManagementApplicationTests {
|
|||||||
System.out.println(ossAccessKeyId);
|
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