提交 8f7792ad authored 作者: 李秋林's avatar 李秋林

1、切redis数据源;2、将token解析切换为link项目token解析

上级 b1e85eaf
......@@ -10,8 +10,6 @@
<groupId>com.wangxiaolu</groupId>
<artifactId>wangxiaolu-promotion-common</artifactId>
<version>0.0.2</version>
<name>wangxiaolu-promotion-common</name>
......@@ -127,6 +125,12 @@
<version>${xlsx-streamer.version}</version>
</dependency>
<!-- JWT -->
<dependency>
<groupId>io.jsonwebtoken</groupId>
<artifactId>jjwt</artifactId>
<version>${jjwt.version}</version>
</dependency>
</dependencies>
......
package com.wangxiaolu.promotion.common.constant;
/**
* Token的Key常量
*
* @author ruoyi
*/
public class TokenConstants
{
/**
* 令牌自定义标识
*/
public static final String AUTHENTICATION = "Authorization";
/**
* 令牌前缀
*/
public static final String PREFIX = "Bearer ";
/**
* 令牌秘钥
*/
public final static String SECRET = "abcdefghijklmnopqrstuvwxyz";
/**
* 用户ID字段
*/
public static final String DETAILS_USER_ID = "user_id";
/**
* 用户名字段
*/
public static final String DETAILS_USERNAME = "username";
/**
* 用户标识
*/
public static final String USER_KEY = "user_key";
}
......@@ -16,6 +16,7 @@ public interface RedisKeys {
* 促销员小程序用户登录信息:token
*/
TEMPORARY_TOKEN("user:login_token:temporary:"),
WXL_LINK_TOKEN("login_tokens:"),
/**
* 组织数据 - 客户类数据 - 经销商
*/
......
package com.wangxiaolu.promotion.common.util;
import com.wangxiaolu.promotion.common.constant.TokenConstants;
import io.jsonwebtoken.Claims;
import io.jsonwebtoken.Jwts;
/**
* @author : liqiulin
* @date : 2024-04-16 17
* @describe : java web token
*/
public class JwtTokenUtils {
private static String secret = TokenConstants.SECRET;
/**
* 从令牌中获取数据声明
*
* @param token 令牌
* @return 数据声明
*/
public static Claims parseToken(String token) {
return Jwts.parser().setSigningKey(secret).parseClaimsJws(token).getBody();
}
/**
* 根据令牌获取用户标识
*
* @param claims 身份信息
* @return 用户ID
*/
public static String getUserKey(Claims claims) {
return getValue(claims, TokenConstants.USER_KEY);
}
/**
* 根据身份信息获取用户ID
*
* @param claims 身份信息
* @return 用户ID
*/
public static String getUserId(Claims claims) {
return getValue(claims, TokenConstants.DETAILS_USER_ID);
}
/**
* 根据身份信息获取用户名
*
* @param claims 身份信息
* @return 用户名
*/
public static String getUserName(Claims claims) {
return getValue(claims, TokenConstants.DETAILS_USERNAME);
}
/**
* 根据身份信息获取键值
*
* @param claims 身份信息
* @param key 键
* @return 值
*/
private static String getValue(Claims claims, String key) {
Object value = claims.get(key);
if (null == value) {
return "";
}
if (value instanceof String) {
return (String) value;
}
return value.toString();
}
}
......@@ -94,7 +94,7 @@ public class MD5Utils {
public static void main(String[] args) {
// 原密码
String plaintext = "wxl000680";
String plaintext = "wxl000682";
// 获取加盐后的MD5值
String ciphertext = MD5Utils.getSaltMD5(plaintext);
......
......@@ -91,4 +91,8 @@ public class R {
public static R fail(Object data) {
return new R(RCode.FAILED,data);
}
public static R fail(StatusCode statusCode) {
return new R(statusCode);
}
}
......@@ -55,6 +55,8 @@ public enum RCode implements StatusCode {
USER_WXOPENID_UNIQUE_ERROR(3015, "已使用其他手机号注册"),
LOGIN_PHONE_PARAM_ERROR(3016, "手机号错误"),
NOT_LOGIN_TIMEOUT_ERROR(3017, "您的登录已过期,请重新登录"),
EMP_PRIVILEGE_ERROR(3018, "账号权限错误"),
QC_USER_IS_NULL_ERROR(3019, "账号未在勤策中找到"),
/**
* promotion-模块异常
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论