diff --git a/online-taxi-public/api-passenger/src/main/java/com/taxi/apipassenger/interceptor/InterceptorConfig.java b/online-taxi-public/api-passenger/src/main/java/com/taxi/apipassenger/interceptor/InterceptorConfig.java index 7ac1192..4b1571e 100644 --- a/online-taxi-public/api-passenger/src/main/java/com/taxi/apipassenger/interceptor/InterceptorConfig.java +++ b/online-taxi-public/api-passenger/src/main/java/com/taxi/apipassenger/interceptor/InterceptorConfig.java @@ -1,6 +1,5 @@ package com.taxi.apipassenger.interceptor; -import org.springframework.beans.factory.annotation.Configurable; import org.springframework.context.annotation.Configuration; import org.springframework.web.servlet.config.annotation.InterceptorRegistry; import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @@ -12,7 +11,9 @@ public class InterceptorConfig implements WebMvcConfigurer { // WebMvcConfigurer.super.addInterceptors(registry); registry.addInterceptor(new JwtInterceptor()) .addPathPatterns("/**")//拦截的路径 - .excludePathPatterns("/noauthTest");//不拦截的路径 + .excludePathPatterns("/noauthTest") + .excludePathPatterns("/verification-code-check") + .excludePathPatterns("/verification-code");//不拦截的路径 } } diff --git a/online-taxi-public/api-passenger/src/main/java/com/taxi/apipassenger/service/VerificationCodeService.java b/online-taxi-public/api-passenger/src/main/java/com/taxi/apipassenger/service/VerificationCodeService.java index 8d039c5..0d3e459 100644 --- a/online-taxi-public/api-passenger/src/main/java/com/taxi/apipassenger/service/VerificationCodeService.java +++ b/online-taxi-public/api-passenger/src/main/java/com/taxi/apipassenger/service/VerificationCodeService.java @@ -14,8 +14,10 @@ import com.taxi.apipassenger.remote.ServiceVerificatoncodeClient; import net.sf.json.JSONObject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.StringRedisTemplate; +import org.springframework.stereotype.Indexed; import org.springframework.stereotype.Service; +import java.lang.invoke.ConstantCallSite; import java.util.concurrent.TimeUnit; @Service @@ -72,6 +74,12 @@ public class VerificationCodeService { //四、颁发令牌 String token = JwtUtils.generatorToken(passenegerPhone, IdentityConstant.PASSENGER_IDENTITY); + + //将token存入redis + String tokenKey = Utils.getTokenPrefixKey(passenegerPhone, + IdentityConstant.PASSENGER_IDENTITY); + stringRedisTemplate.opsForValue().set(tokenKey,token,30,TimeUnit.DAYS); + CheckCodeResponse checkCodeResponse = new CheckCodeResponse(); checkCodeResponse.setToken(token); return ResponseResult.success(checkCodeResponse); diff --git a/online-taxi-public/api-passenger/target/classes/com/taxi/apipassenger/service/VerificationCodeService.class b/online-taxi-public/api-passenger/target/classes/com/taxi/apipassenger/service/VerificationCodeService.class index 5f97979..8d1afd2 100644 Binary files a/online-taxi-public/api-passenger/target/classes/com/taxi/apipassenger/service/VerificationCodeService.class and b/online-taxi-public/api-passenger/target/classes/com/taxi/apipassenger/service/VerificationCodeService.class differ diff --git a/online-taxi-public/internal-common/src/main/java/com/internal/contant/IdentityConstant.java b/online-taxi-public/internal-common/src/main/java/com/internal/contant/IdentityConstant.java index 643af2c..35261f2 100644 --- a/online-taxi-public/internal-common/src/main/java/com/internal/contant/IdentityConstant.java +++ b/online-taxi-public/internal-common/src/main/java/com/internal/contant/IdentityConstant.java @@ -1,7 +1,13 @@ package com.internal.contant; +/** + * 用户身份标识 + */ public class IdentityConstant { + /** + * 乘客 + */ public static final String PASSENGER_IDENTITY = "1"; public static final String DRIVER_IDENTITY = "2"; diff --git a/online-taxi-public/internal-common/src/main/java/com/internal/util/ApiPassengerConstant.java b/online-taxi-public/internal-common/src/main/java/com/internal/util/ApiPassengerConstant.java index 32acff2..5931592 100644 --- a/online-taxi-public/internal-common/src/main/java/com/internal/util/ApiPassengerConstant.java +++ b/online-taxi-public/internal-common/src/main/java/com/internal/util/ApiPassengerConstant.java @@ -3,4 +3,5 @@ package com.internal.util; public class ApiPassengerConstant { //乘客验证码的前缀 public final static String verificationCodePrefix = "passenger-verificatioin-code-"; + public final static String TOKEN_PREFIX = "token-"; } diff --git a/online-taxi-public/internal-common/src/main/java/com/internal/util/JwtUtils.java b/online-taxi-public/internal-common/src/main/java/com/internal/util/JwtUtils.java index 3e911a6..e715eb0 100644 --- a/online-taxi-public/internal-common/src/main/java/com/internal/util/JwtUtils.java +++ b/online-taxi-public/internal-common/src/main/java/com/internal/util/JwtUtils.java @@ -28,7 +28,7 @@ public class JwtUtils { //token过期时间 Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.DATE, 1); - Date date = calendar.getTime(); +// Date date = calendar.getTime(); JWTCreator.Builder builder = JWT.create(); map.forEach( @@ -37,7 +37,7 @@ public class JwtUtils { } ); //整合过期时间 - builder.withExpiresAt(date); +// builder.withExpiresAt(date);//token保持到redis,已经设置有效期时间 //生成token String sign = builder.sign(Algorithm.HMAC256(SIGN)); return sign; diff --git a/online-taxi-public/internal-common/src/main/java/com/internal/util/Utils.java b/online-taxi-public/internal-common/src/main/java/com/internal/util/Utils.java index 81daa25..57b2935 100644 --- a/online-taxi-public/internal-common/src/main/java/com/internal/util/Utils.java +++ b/online-taxi-public/internal-common/src/main/java/com/internal/util/Utils.java @@ -2,7 +2,19 @@ package com.internal.util; public class Utils { - public static String getVerificationCodePrefixKey(String passenegerPhone){ - return ApiPassengerConstant.verificationCodePrefix + passenegerPhone; + public static String getVerificationCodePrefixKey(String passenegerPhone) { + return ApiPassengerConstant.verificationCodePrefix + passenegerPhone; } + + /** + * 根据手机号和身份标识,来生成token + * @param passenegerPhone + * @param identity + * @return + */ + public static String getTokenPrefixKey(String passenegerPhone, String identity) { + return ApiPassengerConstant.TOKEN_PREFIX + passenegerPhone + "-" + identity; + } + + }