parent
06f3fc8507
commit
6eebe5f946
19 changed files with 187 additions and 79 deletions
@ -0,0 +1,108 @@ |
||||
//package com.yipin.liuwanr;
|
||||
//
|
||||
//
|
||||
//import com.alibaba.fastjson.JSONObject;
|
||||
//import com.sun.org.apache.xml.internal.security.algorithms.SignatureAlgorithm;
|
||||
//import io.jsonwebtoken.Claims;
|
||||
//import io.jsonwebtoken.ExpiredJwtException;
|
||||
//import io.jsonwebtoken.JwtBuilder;
|
||||
//import io.jsonwebtoken.Jwts;
|
||||
//import io.jsonwebtoken.SignatureAlgorithm;
|
||||
//import org.apache.commons.codec.binary.Base64;
|
||||
//
|
||||
//import javax.crypto.SecretKey;
|
||||
//import javax.crypto.spec.SecretKeySpec;
|
||||
//import java.security.SignatureException;
|
||||
//import java.util.Date;
|
||||
//
|
||||
//public class JwtUtils {
|
||||
// /**
|
||||
// * 签发JWT
|
||||
// *
|
||||
// * @param id
|
||||
// * @param subject 可以是JSON数据 尽可能少
|
||||
// * @param ttlMillis
|
||||
// * @return String
|
||||
// *
|
||||
// */
|
||||
// public static String createJWT(String id, String subject, long ttlMillis) {
|
||||
// ttlMillis = ttlMillis * 1000;
|
||||
// SignatureAlgorithm signatureAlgorithm = SignatureAlgorithm.HS256;
|
||||
// long nowMillis = System.currentTimeMillis();
|
||||
// Date now = new Date(nowMillis);
|
||||
// SecretKey secretKey = generalKey();
|
||||
// JwtBuilder builder = Jwts.builder().setId(String.valueOf(id)).setSubject(subject) // 主题
|
||||
// .setIssuer("user") // 签发者
|
||||
// .setIssuedAt(now) // 签发时间
|
||||
// .signWith(signatureAlgorithm, secretKey); // 签名算法以及密匙
|
||||
// if (ttlMillis >= 0) {
|
||||
// long expMillis = nowMillis + ttlMillis;
|
||||
// Date expDate = new Date(expMillis);
|
||||
// builder.setExpiration(expDate); // 过期时间
|
||||
// }
|
||||
// return builder.compact();
|
||||
// }
|
||||
//
|
||||
// public static void main(String[] args) {
|
||||
// //System.out.printf(createJWT("1","111", 10000000));
|
||||
// boolean isTrue = validateJWT("eyJhbGciOiJIUzI1NiJ9.eyJqdGkiOiIxIiwic3ViIjoiMTExIiwiaXNzIjoidXNlciIsImlhdCI6MTYwMTM0MzYyNywiZXhwIjoxNjAxMzUzNjI3fQ.q5Ssg2LM1OzzgvVWqLhgP_Hko0-pfeNO5bvpUE5KQ-s");
|
||||
// System.out.println(isTrue);
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// * 验证JWT
|
||||
// *
|
||||
// * @param jwtStr
|
||||
// * @return
|
||||
// */
|
||||
// public static Boolean validateJWT(String jwtStr) {
|
||||
// //boolean isValidate = false;
|
||||
// Claims claims = null;
|
||||
// try {
|
||||
// claims = parseJWT(jwtStr);
|
||||
// return true;
|
||||
// } catch (ExpiredJwtException e) {
|
||||
// return false;
|
||||
// } catch (SignatureException e) {
|
||||
// return false;
|
||||
// } catch (Exception e) {
|
||||
// return false;
|
||||
// }
|
||||
// //return checkResult;
|
||||
// }
|
||||
//
|
||||
// public static SecretKey generalKey() {
|
||||
// byte[] encodedKey = Base64.decodeBase64("DQJWT");
|
||||
// SecretKey key = new SecretKeySpec(encodedKey, 0, encodedKey.length, "AES");
|
||||
// return key;
|
||||
// }
|
||||
//
|
||||
// /**
|
||||
// *
|
||||
// * 解析JWT字符串
|
||||
// *
|
||||
// * @param jwt
|
||||
// * @return
|
||||
// * @throws Exception
|
||||
// */
|
||||
// public static Claims parseJWT(String jwt) throws Exception {
|
||||
// SecretKey secretKey = generalKey();
|
||||
// return Jwts.parser().setSigningKey(secretKey).parseClaimsJws(jwt).getBody();
|
||||
// }
|
||||
//
|
||||
// public static void putTokenToRedis(Long userId, String token, long times) {
|
||||
// RedisUtil.setEx("dq:token:"+token, String.valueOf(userId), times);
|
||||
// }
|
||||
//
|
||||
// public static <UserEntity> void putUserEntityToRedis(Long userId, UserEntity userEntity, long times) {
|
||||
// RedisUtil.setEx("dq:userId:"+userId, JSONObject.toJSONString(userEntity), times);
|
||||
// }
|
||||
//
|
||||
// public static void removeUserEntityByUserId(Long userId) {
|
||||
// RedisUtil.del("dq:userId:"+userId);
|
||||
// }
|
||||
//
|
||||
// public static void removeTokenByToken(String token) {
|
||||
// RedisUtil.del("dq:token:"+token);
|
||||
// }
|
||||
//}
|
Loading…
Reference in new issue