From 2e07341226fe55675c1e84902f58761a23712a8e Mon Sep 17 00:00:00 2001 From: liuyuanqiang <837052308@qq.com> Date: Wed, 2 Nov 2022 14:08:58 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=8Ctoken=E7=94=9F=E6=88=90=E5=B9=B6?= =?UTF-8?q?=E5=AD=98=E5=85=A5Redis=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- api-passenger/pom.xml | 1 + .../controller/TestController.java | 18 +++++ .../VerificationCodeController.java | 1 - .../interceptor/InterceptorConfig.java | 25 +++++++ .../interceptor/JwtInterceptor.java | 63 ++++++++++++++++++ .../service/VerificationCodeService.java | 26 +++++--- .../target/api-passenger-1.0-SNAPSHOT.jar | Bin 6244 -> 0 bytes .../controller/TestController.class | Bin 647 -> 1071 bytes .../VerificationCodeController.class | Bin 2306 -> 2306 bytes .../interceptor/InterceptorConfig.class | Bin 0 -> 1728 bytes .../interceptor/JwtInterceptor.class | Bin 0 -> 3179 bytes .../service/VerificationCodeService.class | Bin 4605 -> 5050 bytes .../target/maven-archiver/pom.properties | 3 - .../compile/default-compile/createdFiles.lst | 5 -- .../compile/default-compile/inputFiles.lst | 5 -- .../default-testCompile/inputFiles.lst | 0 .../common/constant/TokenConstants.java | 11 +++ .../com/mashibing/common/dto/TokenResult.java | 1 + .../common/response/TokenResponse.java | 3 +- .../com/mashibing/common/util/JwtUtils.java | 15 +++-- .../common/util/RedisPrefixUtils.java | 14 ++++ .../common/constant/IdentityConstant.class | Bin 0 -> 455 bytes .../common/constant/TokenConstants.class | Bin 0 -> 472 bytes .../mashibing/common/dto/TokenResult.class | Bin 1907 -> 2349 bytes .../common/response/TokenResponse.class | Bin 1496 -> 1995 bytes .../com/mashibing/common/util/JwtUtils.class | Bin 4247 -> 4445 bytes .../common/util/RedisPrefixUtils.class | Bin 0 -> 1122 bytes .../target/internal-common-1.0-SNAPSHOT.jar | Bin 7996 -> 13355 bytes .../compile/default-compile/createdFiles.lst | 6 +- .../compile/default-compile/inputFiles.lst | 4 ++ .../default-testCompile/createdFiles.lst | 0 pom.xml | 6 -- service-passenger-user/pom.xml | 1 + service-verificationcode/pom.xml | 1 + 34 files changed, 170 insertions(+), 39 deletions(-) create mode 100644 api-passenger/src/main/java/com/mashibing/apipassenger/interceptor/InterceptorConfig.java create mode 100644 api-passenger/src/main/java/com/mashibing/apipassenger/interceptor/JwtInterceptor.java delete mode 100644 api-passenger/target/api-passenger-1.0-SNAPSHOT.jar create mode 100644 api-passenger/target/classes/com/mashibing/apipassenger/interceptor/InterceptorConfig.class create mode 100644 api-passenger/target/classes/com/mashibing/apipassenger/interceptor/JwtInterceptor.class delete mode 100644 api-passenger/target/maven-archiver/pom.properties delete mode 100644 api-passenger/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst delete mode 100644 api-passenger/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst delete mode 100644 api-passenger/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst create mode 100644 internal-common/src/main/java/com/mashibing/common/constant/TokenConstants.java create mode 100644 internal-common/src/main/java/com/mashibing/common/util/RedisPrefixUtils.java create mode 100644 internal-common/target/classes/com/mashibing/common/constant/IdentityConstant.class create mode 100644 internal-common/target/classes/com/mashibing/common/constant/TokenConstants.class create mode 100644 internal-common/target/classes/com/mashibing/common/util/RedisPrefixUtils.class rename {api-passenger => internal-common}/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst (100%) diff --git a/api-passenger/pom.xml b/api-passenger/pom.xml index 0e1dec6..001da1b 100644 --- a/api-passenger/pom.xml +++ b/api-passenger/pom.xml @@ -40,6 +40,7 @@ org.mashibing internal-common + 1.0-SNAPSHOT diff --git a/api-passenger/src/main/java/com/mashibing/apipassenger/controller/TestController.java b/api-passenger/src/main/java/com/mashibing/apipassenger/controller/TestController.java index b7ea833..255d815 100644 --- a/api-passenger/src/main/java/com/mashibing/apipassenger/controller/TestController.java +++ b/api-passenger/src/main/java/com/mashibing/apipassenger/controller/TestController.java @@ -1,6 +1,7 @@ package com.mashibing.apipassenger.controller; import com.mashibing.apipassenger.request.VerificationCodeDTO; +import com.mashibing.common.dto.ResponseResult; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @@ -13,4 +14,21 @@ public class TestController { // return "test api passenger."; } + + /** + * 需要有token + * @return + */ + @GetMapping("/authTest") + public ResponseResult authTest(){ + return ResponseResult.success("auth test!"); + } + /** + * 没有token + * @return + */ + @GetMapping("/noAuthTest") + public ResponseResult noAuthTest(){ + return ResponseResult.success("no auth test!"); + } } diff --git a/api-passenger/src/main/java/com/mashibing/apipassenger/controller/VerificationCodeController.java b/api-passenger/src/main/java/com/mashibing/apipassenger/controller/VerificationCodeController.java index 5e386a6..2babfbc 100644 --- a/api-passenger/src/main/java/com/mashibing/apipassenger/controller/VerificationCodeController.java +++ b/api-passenger/src/main/java/com/mashibing/apipassenger/controller/VerificationCodeController.java @@ -30,7 +30,6 @@ public class VerificationCodeController { String passengerPhone = verificationCodeDTO.getPassengerPhone(); System.out.println("verificationCode:" + verificationCode + ",passengerPhone:" + passengerPhone); - return verificationCodeService.checkCode(passengerPhone,verificationCode); } diff --git a/api-passenger/src/main/java/com/mashibing/apipassenger/interceptor/InterceptorConfig.java b/api-passenger/src/main/java/com/mashibing/apipassenger/interceptor/InterceptorConfig.java new file mode 100644 index 0000000..8ed8e4d --- /dev/null +++ b/api-passenger/src/main/java/com/mashibing/apipassenger/interceptor/InterceptorConfig.java @@ -0,0 +1,25 @@ +package com.mashibing.apipassenger.interceptor; + +import com.alibaba.cloud.nacos.discovery.reactive.NacosReactiveDiscoveryClient; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.InterceptorRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; +@Configuration +public class InterceptorConfig implements WebMvcConfigurer { + + @Bean + public JwtInterceptor jwtInterceptor(){ + return new JwtInterceptor(); + } + @Override + public void addInterceptors(InterceptorRegistry registry) { + // /**拦截的更多,子目录也拦截 +// registry.addInterceptor(new JwtInterceptor()) 这个会导致拦截器初始化时,没有初始化redisTemplate,所以要提前new + registry.addInterceptor(jwtInterceptor()) + .addPathPatterns("/**") + .excludePathPatterns("/noAuthTest") + .excludePathPatterns("/verification-code") + .excludePathPatterns("/verification-code-check"); + } +} diff --git a/api-passenger/src/main/java/com/mashibing/apipassenger/interceptor/JwtInterceptor.java b/api-passenger/src/main/java/com/mashibing/apipassenger/interceptor/JwtInterceptor.java new file mode 100644 index 0000000..42c6086 --- /dev/null +++ b/api-passenger/src/main/java/com/mashibing/apipassenger/interceptor/JwtInterceptor.java @@ -0,0 +1,63 @@ +package com.mashibing.apipassenger.interceptor; + +import com.auth0.jwt.exceptions.AlgorithmMismatchException; +import com.auth0.jwt.exceptions.SignatureVerificationException; +import com.auth0.jwt.exceptions.TokenExpiredException; +import com.mashibing.common.constant.TokenConstants; +import com.mashibing.common.dto.ResponseResult; +import com.mashibing.common.dto.TokenResult; +import com.mashibing.common.util.JwtUtils; +import com.mashibing.common.util.RedisPrefixUtils; +import net.sf.json.JSONObject; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.StringRedisTemplate; +import org.springframework.web.servlet.HandlerInterceptor; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.xml.transform.Result; +import java.io.PrintWriter; + +public class JwtInterceptor implements HandlerInterceptor { + @Autowired + private StringRedisTemplate stringRedisTemplate; + @Override + public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { + + boolean result = true; + String resutltString = ""; + + String token = request.getHeader("Authorization"); + // 解析token + TokenResult tokenResult = null; + try { + tokenResult = JwtUtils.parseToken(token); + }catch (Exception e){ + tokenResult = null; + } + + if (tokenResult == null){ + resutltString = "access token invalid"; + result = false; + }else{ + // 拼接key + String phone = tokenResult.getPhone(); + String identity = tokenResult.getIdentity(); + + String tokenKey = RedisPrefixUtils.generateTokenKey(phone,identity, TokenConstants.ACCESS_TOKEN_TYPE); + // 从redis中取出token + String tokenRedis = stringRedisTemplate.opsForValue().get(tokenKey); + if ((StringUtils.isBlank(tokenRedis)) || (!token.trim().equals(tokenRedis.trim()))){ + resutltString = "access token invalid"; + result = false; + } + } + + if (!result){//输出到前台页面数据 + PrintWriter out = response.getWriter(); + out.print(JSONObject.fromObject(ResponseResult.fail(resutltString)).toString()); + } + return result; + } +} diff --git a/api-passenger/src/main/java/com/mashibing/apipassenger/service/VerificationCodeService.java b/api-passenger/src/main/java/com/mashibing/apipassenger/service/VerificationCodeService.java index a611125..0183144 100644 --- a/api-passenger/src/main/java/com/mashibing/apipassenger/service/VerificationCodeService.java +++ b/api-passenger/src/main/java/com/mashibing/apipassenger/service/VerificationCodeService.java @@ -4,11 +4,14 @@ import com.mashibing.apipassenger.remote.ServicePassengerUserClient; import com.mashibing.apipassenger.remote.ServiceVefificationcodeClient; import com.mashibing.common.constant.CommonStatusEnum; import com.mashibing.common.constant.IdentityConstant; +import com.mashibing.common.constant.TokenConstants; import com.mashibing.common.dto.ResponseResult; import com.mashibing.common.request.VerificationCodeDTO; import com.mashibing.common.response.NumberCodeResponse; import com.mashibing.common.response.TokenResponse; import com.mashibing.common.util.JwtUtils; +import com.mashibing.common.util.RedisPrefixUtils; +import jdk.nashorn.internal.parser.TokenType; import net.sf.json.JSONObject; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -27,7 +30,7 @@ public class VerificationCodeService { @Autowired private StringRedisTemplate stringRedisTemplate; - private String verificationCodePrefix = "verification-code-"; + /** * 生成验证码 @@ -43,7 +46,7 @@ public class VerificationCodeService { //存入redis System.out.println("存入redis"); - String key = this.generateKeyByCode(passengerPhone); + String key = RedisPrefixUtils.generateKeyByCode(passengerPhone); stringRedisTemplate.opsForValue().set(key, "" + numberCode,2, TimeUnit.MINUTES); //发送短信。。。 @@ -52,9 +55,6 @@ public class VerificationCodeService { } - private String generateKeyByCode(String passengerPhone){ - return this.verificationCodePrefix + passengerPhone; - } /** * 校验验证码 * @param passengerPhone @@ -63,7 +63,7 @@ public class VerificationCodeService { */ public ResponseResult checkCode(String passengerPhone, String verificationCode) { System.out.println("根据手机号和验证码,查询redis"); - String key = this.generateKeyByCode(passengerPhone); + String key = RedisPrefixUtils.generateKeyByCode(passengerPhone); String codeRedis = stringRedisTemplate.opsForValue().get(key); System.out.println("code in redis:" + codeRedis); @@ -80,12 +80,22 @@ public class VerificationCodeService { servicePassengerUserClient.loginOrRegister(verificationCodeDTO); System.out.println("颁发token"); - String token = JwtUtils.generateToken(passengerPhone, IdentityConstant.PASSENGER_IDENTITY); + String accessToken = JwtUtils.generateToken(passengerPhone, IdentityConstant.PASSENGER_IDENTITY, TokenConstants.ACCESS_TOKEN_TYPE); + String refreshToken = JwtUtils.generateToken(passengerPhone, IdentityConstant.PASSENGER_IDENTITY, TokenConstants.REFRESH_TOKEN_TYPE); + + //token存入Redis + String accessTokenRedisKey = RedisPrefixUtils.generateTokenKey(passengerPhone, IdentityConstant.PASSENGER_IDENTITY, TokenConstants.ACCESS_TOKEN_TYPE); + String refreshTokenRedisKey = RedisPrefixUtils.generateTokenKey(passengerPhone, IdentityConstant.PASSENGER_IDENTITY, TokenConstants.REFRESH_TOKEN_TYPE); + stringRedisTemplate.opsForValue().set(accessTokenRedisKey, accessToken, 30,TimeUnit.DAYS); + stringRedisTemplate.opsForValue().set(refreshTokenRedisKey, refreshToken, 31,TimeUnit.DAYS); TokenResponse tokenResponse = new TokenResponse(); - tokenResponse.setToken(token); + tokenResponse.setAccessToken(accessToken); + tokenResponse.setRefreshToken(refreshToken); return ResponseResult.success(tokenResponse); } + + } diff --git a/api-passenger/target/api-passenger-1.0-SNAPSHOT.jar b/api-passenger/target/api-passenger-1.0-SNAPSHOT.jar deleted file mode 100644 index 493f4d3bfe1eb3171e68c1652655f2bd6c76cb97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6244 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 vC~ppi{=sUdDY!x|njR9`Et z+*^iHd#B4#J~VyFu-Z{te$11e%uYlvCQq|tA`y2*ro26NmfcWUhL@elBs>vzsCr5d zxJXqhtd)8oGaec3G84yiJdxHNPRxC(=E%da(cbBtiZj7uLD|PHBM`dXI?Az? zsOEvz#tEm4rjmOdlMT2{edw1=B=X#3U-`N0aq6JY#Uz%$m+pf|(-CClOvE{{sqj(d zy2#zox5e;`nwX_QR$?^oJHwBpO{uP=J&zsrw#cWMfi?#dm?d7cf@70sk$k7TgzK~X zcRgi>S93F=;zjuysAG{(J(G|m4=0-MG6cT8&|kG`c-+7fY%?rt6Hfgk;w<0!#>TKV zoz?Qw z?{rwe60Ow>XMhHs8>0X$V}&ew?O3BIpZuIGpImA#e50+Hx>`srjZ?2t%nBtm>0kd0 zX0bu1>$ow7dqI|mt2RqNQT`usvw&E=67eP>Y+iy`xdbts3vr9OyLG|tHar6_%^lz$ DE`j@` delta 226 zcmZ3_(atJy>ff$?3=9k=43b<7EDWL?3}WmI;_M6(3zZosH#5dbvNEtSG6us-AkC_^oq=&9SegS! zf}|N3IDwFXfd`_1fs26~$YTWZd4YzoPc~o{aYv}-LsH8ORm%rd&j-}O55xk|42;DL Uf@~ diff --git a/api-passenger/target/classes/com/mashibing/apipassenger/controller/VerificationCodeController.class b/api-passenger/target/classes/com/mashibing/apipassenger/controller/VerificationCodeController.class index dd4419a2d021643b8075f6b053c5741a2cfd630c..f23b6b8d70802ab5b1a693a07c662abd91158c99 100644 GIT binary patch delta 13 UcmZn?Y7*Me&%vlTc>+ff03Ff+ff03Fu^FaQ7m diff --git a/api-passenger/target/classes/com/mashibing/apipassenger/interceptor/InterceptorConfig.class b/api-passenger/target/classes/com/mashibing/apipassenger/interceptor/InterceptorConfig.class new file mode 100644 index 0000000000000000000000000000000000000000..957d01d3e0e28a83d7e49e1c19fab8beee0ad7ed GIT binary patch literal 1728 zcmb_cTTc@~6#j;`>{80DC<0y)FKw}`q99OX0>lfXC;`nn6^%v<2 zBpUqz{wU*_w#Zf*#Ds^=IdeMaJKs6;&HnuL^#_0_n2n+vqXzCo(T33|x^Op&d$?~P zVImnt3S%Z7Xqz@MZo)F~(7+=D6AbOoq$AaHhEO88!4O_>^Mau#D;@EsTFwb?o##pv ziDzA#mo~U3^}Z1dtD^K7X0x_iw#wWu%A9lx7O%((_kH0Mgl9=d3C|W4<$BiQiND}F z+p>^h=-$~^fjGlVB6(iCrKVH@8(OV8N|wcj^d-@pa~xN3C0&PDrn9bBu>6Wg6t_KI z7W=NZYuPSwI#3q>bJUs_+##$Up3et}5yDcUCB(kSS-$Z0NS`BQ@?@n9lpmIrdm>HF`Rl< z)vHZ46GJch7$(no|IPOm!xan~cpM`MPZD>{#42$T(3;YhM4GfxDFah6JjFCar{%bF zRaIOUzKUT+hvL?r@Z`3%Yjo0fO}vArgK4`c>|KWGa}qr@rY3rCb34LT4D+o7b+#Hd zMQ(Y|J|3d*7+(B8NPyk3r05+r%a!5dzt#GhJNc6E0(hBZOCg-yR3N{>r>+i$#fxaJ z23CKMD_j-nN6OYO`hDVE_HWT#a0C6~z%EtuB3KwB^o8vPF`}<;h%CJUTH~~{$TG5# z)DhSha@x>OYkMu&flK7a>IZNc1GHoM4bUl_JV90`o8Qp3b%fAo@`L$Zfqb)(KSXCV z`Y>6BtGL#{`h*C1!0cG+5aB~a!r#%p6^a{chcFv{2l>&4-x=^@+TT23KTH)see_ZN s>r^*M%qNNW3^CUo4b&?&7*S0+b%WU4r2is}HoA>lwRHr?gl_}C0l5wQX8-^I literal 0 HcmV?d00001 diff --git a/api-passenger/target/classes/com/mashibing/apipassenger/interceptor/JwtInterceptor.class b/api-passenger/target/classes/com/mashibing/apipassenger/interceptor/JwtInterceptor.class new file mode 100644 index 0000000000000000000000000000000000000000..18cd0505450f15cecd515c5eb1ecf0a7fff3e75b GIT binary patch literal 3179 zcmbVPSyL2O6#kkS=%J@k1k{Ws?jj(u6E}3w#65^81P~LGXf87sre&sk?CudXF^gGE zjM;sl%4c8llByKZJf!lLs{E*!?{?2117l&O3hvVP+;h(N-Lt?y|NikOfW5e9U>*7s zIFrCY5@&JFz#xWnyq>_Yff0!rMu_gG)Lt8+aGOKr_bG zkVzs7XS)3f z1v%|{Q&v_4!t#`)m2o|3jV!&|t06U9ass;`$86so&Z;|3zIUB}mOpr+n&DIDLL z5ShUBu3KXMf_1bMxYIT*Qf=vxl&Pa%%c~{n2ffRR`9-oKBRMNC=+WT# z6`2WoJ1=U`Xliw+B04%bqnsm;bf>Z@+3NsUW11TJ1hAD!F4VJcS<^EB$r0G z4Bwd?x}{)VyX{&-eCXhUXOjUc(7gzNh8@d7h>+5fCnGc(mZztTo0f7Rr=EJYCrHX9 z@Xe{Tl&7Z}`Djv`ARk0H$w3H6L$VAkl5Ah}#C-6A>sZ;qwMG>e!=XlkY#IqfX6mdc zh9MGWL{Z1pFfT6a@R)ccZJu;SPxDzBZsYJ0GZf? z%^E;^4Cb8c**C&m&`~tuBhXPYaShYF{RIEKQ4MV(laao^Da5$RcCLxMouzjsW^moa z4e({VtAo0XIK$8igcC%tkC%7!IT@)8+0gNxiT82S#PfJT#|I`p#78{NGU$^cD;eVL zQDRhOYv+QnpHJW|HFcK)JFg1UdCn^Iio)|{_=+0RHC5MCv&cnNFX-b?R8QJEYC4pp z#Oe8>(p6J$=w4V}hCDf8&y?M4o|KOC*i=GK!%Ea&!`Y=YEd5f`wVqnh@C=QLdEgfP zQ?55A@+Bs350O8Ms!)8es3579M*8;rk87;Jq;ye8RBHbMrB9oKsy{e@7 z3*)Fvwr=~!*hZ#U+G}vEno684yTHQA0xwh)RmoKxpqz@^s2^xpTM3FKjbca5NKg^R zG8^``sNB--gs}4(4%c$)=@q+L3%Oq7u-*C-))k*My?s&1>=<07)k+1fdV&HOuT9V`5L{?@5N%6S9-q-)^3k#ikqb^(rC zxU)F3A)vnNcWA$c$6GlnVPFlmaWo?VY)3nH?84|kOkJ*9!`bAw`| zn!}2e@dzvH@E4lX$rMjk&7w8cFo%{@lEWNYXJM4Jt&Y!PefJ}@vG63Qss15WKg60j ztewMitK+}W-ZoG(t z*o7l_31_&wggtDMd)e;x;U-URA9G)Dh$DE+lw<0z0WE!TX1)sT+-< zmR(#K)U}as(2XQDG*kb}lp~>Kvejxgt*OVjPmBBbdTO;FJ=7ng#RJqICyIOYp&RwY za)+LD6Kfl8;}9+Cc!hVS(D0bx5;|VhaYV;a9mg~s$HSi!;PPaA#bX?YSzDqasxAPJ issCxJNbD&ZjMM1`yv9{ij2P6v6rkTKfciMr;q-qVJ9AV3 literal 0 HcmV?d00001 diff --git a/api-passenger/target/classes/com/mashibing/apipassenger/service/VerificationCodeService.class b/api-passenger/target/classes/com/mashibing/apipassenger/service/VerificationCodeService.class index 61850279003de077e8c79545f65c2b3a3d821b97..ad351ea8857ad92f2f42dfb4e541ba3a76a8a607 100644 GIT binary patch delta 1866 zcmZXVS#(oX6o$W>>E7JjKuv=XDJ`Sbwm=Ikq*0MF7X+bzP-QA5&{`GkKgXUY=m9DPo%vwlaOv zB#Wn%c-r6@o$V&M)F`n-W!mXu7tb0zr?cDOd7T#w=9;|79)k*1&)#$i*{Xz>(x)7q zeIb)#6{?v1O1!M|iq5MV-J*7(meuIhCTR8s#|155FLMR$D(5-7-gRoMucERt5{*t> zQWL4wu<9ZU>LSsq)G@Q&Wm#l?b##1Wl}50=QCe+}cb93K?cMHj-x$W~yk_w_Z`fI$ zg6snpZ*tJ$HiqdOvN%kGPNT&U-qI+vi~ODJ)t+w7!zAoop21_AXtrpg#o{Qf8orAM zwqLB@SEthJylwFg$1FxMTIXGhXp;vY>#pcYpgZT zI<=n4rhC$6+=`gGi)#26MrtE<6|qQ)&2jcNS08(ykYDG@jA#7sHc6~&WJ&oHjSkUB ztfc)^bQDEdyTPD`jOtK%2TmM{RWwTEQXuNmsPmL zo!5kRI2mW0NEH=Aj2CIO8E`ujh0PR&J!&^V?evsxVAx3M z28O+9PK=Nz$e;!WCn-p4y&*lwO=)c_#gaE1HbZ8}li+4q^aQtr%rsx|Bw_RDBG8ox zVZ-su*yhOK77OAfGMA+?ndM?tC6uj{fmr)vr~%ri&;s+H?f)7G7@e{ zw2--?^GLc`5_Gcs=ADoN=E=^G)TLC)&MS$7%qJrM!4@Qk#c`Q(orUtvP7aILksOwp SbXM=QN^Bfd|MzrJMAB`a~Yf5Ao1@ueSR3%t*MLHS_JWzx`eQ-~YeQjFn!V9l!MN z*mi*0^x=21V5G+9J!nt4on9uE-Z37Zz4G}&%r(`wRYqjb(wdVN}(m^SSe z9k%2=qZ2!Ao@Iwcmsi^8kIT<h(R7_e~BOdzQlXskD8--~l^d0RO zz!UT)@Rbc=X8A_3Tx_UF;J<*KAW$R6XA_LRkk z$VqTrXfiza|L`2HA0RZ!3?ISV5pL+0#%?s=Sy*C=#g+){QVN(OB$dm!6#})ARu&`& zsZN1S4xfo)L-;F@1np31%m4{KgTA`$f4D z9bb~5^zc>Z$z$Dlj^vLsS0pV9dqZ9sv0NZjguJ6vy4a#a<|RYsOGs7N7xD!cB)BQ$ zyGpnW-0zZ#NG+}7LrMGa map = new HashMap(); map.put(JwtUtils.JWT_KEY_PHONE,phone); map.put(JwtUtils.JWT_KET_IDENTITY,identity); + map.put(JwtUtils.JWT_KET_TOKEN_TYPE,tokenType); Calendar calendar = Calendar.getInstance(); calendar.add(Calendar.DATE,1); @@ -31,7 +34,7 @@ public class JwtUtils { map.forEach((k,v) -> { builder.withClaim(k,v); }); - builder.withExpiresAt(date); +// builder.withExpiresAt(date); String token = builder.sign(Algorithm.HMAC256(SIGN)); return token; @@ -39,16 +42,18 @@ public class JwtUtils { public static TokenResult parseToken(String token){ DecodedJWT decodedJWT = JWT.require(Algorithm.HMAC256(SIGN)).build().verify(token); - String phone = decodedJWT.getClaim(JwtUtils.JWT_KEY_PHONE).toString(); - String identity = decodedJWT.getClaim(JwtUtils.JWT_KET_IDENTITY).toString(); + String phone = decodedJWT.getClaim(JwtUtils.JWT_KEY_PHONE).asString();//不能写toString,会多带“”双引号 + String identity = decodedJWT.getClaim(JwtUtils.JWT_KET_IDENTITY).asString(); + String tokenType = decodedJWT.getClaim(JwtUtils.JWT_KET_TOKEN_TYPE).asString(); TokenResult tokenResult = new TokenResult(); + tokenResult.setTokenType(tokenType); tokenResult.setIdentity(identity); tokenResult.setPhone(phone); return tokenResult; } public static void main(String[] args) { - String token = JwtUtils.generateToken("13751145166","1"); + String token = JwtUtils.generateToken("13751145166","1", TokenConstants.ACCESS_TOKEN_TYPE); System.out.println("token:" + token); TokenResult result = JwtUtils.parseToken(token); System.out.println("phone parsed:" + result.toString()); diff --git a/internal-common/src/main/java/com/mashibing/common/util/RedisPrefixUtils.java b/internal-common/src/main/java/com/mashibing/common/util/RedisPrefixUtils.java new file mode 100644 index 0000000..e60b20a --- /dev/null +++ b/internal-common/src/main/java/com/mashibing/common/util/RedisPrefixUtils.java @@ -0,0 +1,14 @@ +package com.mashibing.common.util; + +public class RedisPrefixUtils { + private static String verificationCodePrefix = "verification-code-"; + private static String tokenKeyPrefix = "token-"; + + public static String generateKeyByCode(String passengerPhone){ + return verificationCodePrefix + passengerPhone; + } + + public static String generateTokenKey(String phone,String identity, String tokenType){ + return tokenKeyPrefix + phone + "-" + identity + "-" + tokenType; + } +} diff --git a/internal-common/target/classes/com/mashibing/common/constant/IdentityConstant.class b/internal-common/target/classes/com/mashibing/common/constant/IdentityConstant.class new file mode 100644 index 0000000000000000000000000000000000000000..fc5ea0c5829be9f7808afc3026a72abde0fead6e GIT binary patch literal 455 zcmb7AO-sW-5Pj3H)PC4ntsh5k>Y-8brU=qj34|(533!rCy0lx84WwJapXEvL;1BRe ziPNZ9ym{ES^WM(PzM1!r*EaxX*sUOsO$%EV+Jx5KmFM*bH~ry*)9VjL&gh;+cP1W% z9SJ?LJ(DUuIVaS+iJlvwjW42wEMuF{=nWlzrLv42Lg_+jWiAQ%gF~NC=q6*ysjkv; zu!sYhjzkc#(sGkfM7~JXl7EW@GgWiKu^T3_9gF!?1^m0sEKW3EUk+?%EVWVQ>Bkb= zt9Z#G4du03_HO@8=qv}Sp@J%*^S|DN=I=IcgP9Bsflm0GVjnqPCK&fnKoLBB#w_OL s6~4wVY!Ow)8fVxU2Z~28py#Zl&RAj@+;E+-mc>Oh&}2r~V9cTQ2^~&oxBvhE literal 0 HcmV?d00001 diff --git a/internal-common/target/classes/com/mashibing/common/constant/TokenConstants.class b/internal-common/target/classes/com/mashibing/common/constant/TokenConstants.class new file mode 100644 index 0000000000000000000000000000000000000000..8f9a1a39acae6a9084d7a9b6b6b4fd25f701902b GIT binary patch literal 472 zcmb7>%TB{E5Jj*1rcG&Sc`n%jLd}L92nj{0kce8;M3q=oPB5)YVoPz#f3ZSh!3XeB zh)DoZmTazlW<2BT@%zW?8-O$HH&I5vj_o>j7`Cn)$MyYLFurj|v*7O5W$1ZJ{>1H= ztGVrGsZ{fGhPI=X$+*gTdabyDJ%-waR5H6{C?6e987hvx7YrRw zDlu9mp-2NB#uVv!I^yw^r!wd7U?p2f!!Yn7o!ALC3mK9Dn<&wWmM;@_pdW?$v1G_! z)7Pss5<{7H?*B~>^7mM1qQ!9fpS}#;-%*UirHC?y7LOufOmPK+m5PT{m_>m&M2V&g z(gRdb1r4L1I&ou-Hz-4%(IU0zgk3ODJ$V6pE=t;@H45jtNop1QDmv&A(a({V(E9{p CaBv3z literal 0 HcmV?d00001 diff --git a/internal-common/target/classes/com/mashibing/common/dto/TokenResult.class b/internal-common/target/classes/com/mashibing/common/dto/TokenResult.class index c378acc84fe00bd94f496b64d574deba60c0347e..e9dd800323dae31bb53d1d9a85a263eeaee617e2 100644 GIT binary patch literal 2349 zcma)7ZBrXn6n<{9Z%GzNBX3bu(5OHXq7}7Gpw%K&ETIS#U&e7>_(YVDP_ytdQYs|XlQ-EMh~_fR0=xex5t_QL~WwFRf;csB&%(=$5)%92~B zb!g3L+3QF9yLNlq+HLwV-I~?hvD%K*L!;s~oI`=v*J|#5Y2P|*IJ^8`Vf>{9fKgrpV;soCEgSxutO1-!d^->!L;nJ)x{d!Enmh-AB7!)^;CB?q~X`IK+$ zXaoMy8SjI^X~f_IBHb7Y5E0A3mS@!-RILM_a!!fgX`^PfmSyJTv_am3uCaxyOl)Iw zwYtpADQj(?dJ3JK61lU_Cv%Yx8J-)=3QO8@kJ>eR#gUCq`)ma*oRf29B8%ruj9}En zm|Vs&Dv-O(2$*;evnD1nWnxB3uSn@txm?3_fwA7Xy>;X?>yqV6B#UXE>_rnh_>}D} zOm-?-6fg^u-I}P1858egidCFN4mwCmtb+r)RTn7so23im6{b?b6tCnkFLE3)Ndl#q zv`v25c{deS?}vi zPWw2=d!3EG&g?}WXQkIU(bqYL*T{uTyUabtU7OASidg@mM*{?cq9q}cO}-}dQ+Xkg zrt(Jrknzigl#S_z9P>j?_YbLDHl*xvH{`e`M%~vVt>jf@lrT8~eS>*|?9K$STl~WiUM53$`k|=9gRbsR!$Q)xJt7f$b zC|TACN|ueRECw+k zS@at*k*+k@1|yw6hF&~H>T79Floff9Rl*ZPHYYermR0|Vees=)tm+?4^r!kp@WC*{ zI5v4fDojVk1{NsAki;DhPKN#Qz%o0L?a%{@Jthq! zP&52+FOz;E%b{{g3rg+TxS literal 1907 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 GkXZnd@*_I{ diff --git a/internal-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/internal-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst index 8eead35..03d8b46 100644 --- a/internal-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst +++ b/internal-common/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -1,5 +1 @@ -com\mashibing\common\dto\ResponseResult.class -com\mashibing\common\request\VerificationCodeDTO.class -com\mashibing\common\constant\CommonStatusEnum.class -com\mashibing\common\response\NumberCodeResponse.class -com\mashibing\common\response\TokenResponse.class +com\mashibing\common\util\RedisPrefixUtils.class diff --git a/internal-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/internal-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst index 74e3b0e..c0f5ee4 100644 --- a/internal-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst +++ b/internal-common/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -1,5 +1,9 @@ +D:\Works\workspaces\online-taxi-public\internal-common\src\main\java\com\mashibing\common\constant\IdentityConstant.java D:\Works\workspaces\online-taxi-public\internal-common\src\main\java\com\mashibing\common\constant\CommonStatusEnum.java D:\Works\workspaces\online-taxi-public\internal-common\src\main\java\com\mashibing\common\dto\ResponseResult.java D:\Works\workspaces\online-taxi-public\internal-common\src\main\java\com\mashibing\common\response\NumberCodeResponse.java +D:\Works\workspaces\online-taxi-public\internal-common\src\main\java\com\mashibing\common\constant\TokenConstants.java D:\Works\workspaces\online-taxi-public\internal-common\src\main\java\com\mashibing\common\request\VerificationCodeDTO.java D:\Works\workspaces\online-taxi-public\internal-common\src\main\java\com\mashibing\common\response\TokenResponse.java +D:\Works\workspaces\online-taxi-public\internal-common\src\main\java\com\mashibing\common\util\JwtUtils.java +D:\Works\workspaces\online-taxi-public\internal-common\src\main\java\com\mashibing\common\dto\TokenResult.java diff --git a/api-passenger/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst b/internal-common/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst similarity index 100% rename from api-passenger/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst rename to internal-common/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst diff --git a/pom.xml b/pom.xml index 0baaa84..1861b99 100644 --- a/pom.xml +++ b/pom.xml @@ -74,12 +74,6 @@ import - - org.mashibing - internal-common - 1.0-SNAPSHOT - - diff --git a/service-passenger-user/pom.xml b/service-passenger-user/pom.xml index cc52276..a8291ef 100644 --- a/service-passenger-user/pom.xml +++ b/service-passenger-user/pom.xml @@ -35,6 +35,7 @@ org.mashibing internal-common + 1.0-SNAPSHOT com.alibaba.cloud diff --git a/service-verificationcode/pom.xml b/service-verificationcode/pom.xml index 06914c0..8b955db 100644 --- a/service-verificationcode/pom.xml +++ b/service-verificationcode/pom.xml @@ -37,6 +37,7 @@ org.mashibing internal-common + 1.0-SNAPSHOT