61 lines
1.9 KiB
Java
61 lines
1.9 KiB
Java
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
|
||
class TliasWebManagementApplicationTests {
|
||
|
||
@Test
|
||
void contextLoads() {
|
||
}
|
||
|
||
@Test
|
||
void testUuid(){
|
||
for (int i = 0; i < 1000; i++) {
|
||
String uuid = UUID.randomUUID().toString();
|
||
System.out.println(uuid);
|
||
}
|
||
}
|
||
|
||
@Test
|
||
void testOss(){
|
||
String ossAccessKeyId = System.getenv("OSS_ACCESS_KEY_ID");
|
||
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);
|
||
}
|
||
|
||
}
|