소스 검색

修改参数

xueyiming 9 달 전
부모
커밋
cf90351868

+ 9 - 0
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/model/param/AccessTokenParam.java

@@ -0,0 +1,9 @@
+package com.tzld.longarticle.recommend.server.model.param;
+
+import lombok.Data;
+
+@Data
+public class AccessTokenParam {
+
+    private String secret;
+}

+ 2 - 1
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/exterior/AccessTokenService.java

@@ -1,11 +1,12 @@
 package com.tzld.longarticle.recommend.server.service.exterior;
 
 
+import com.tzld.longarticle.recommend.server.model.param.AccessTokenParam;
 import com.tzld.longarticle.recommend.server.model.vo.AccessTokenVo;
 
 public interface AccessTokenService {
 
-    AccessTokenVo getAccessToken(String secret);
+    AccessTokenVo getAccessToken(AccessTokenParam param);
 
     boolean validateAccessToken(String accessToken);
 }

+ 9 - 5
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/service/exterior/impl/AccessTokenServiceImpl.java

@@ -2,6 +2,7 @@ package com.tzld.longarticle.recommend.server.service.exterior.impl;
 
 import cn.hutool.core.lang.UUID;
 import com.tzld.longarticle.recommend.server.common.enums.SecretEnum;
+import com.tzld.longarticle.recommend.server.model.param.AccessTokenParam;
 import com.tzld.longarticle.recommend.server.model.vo.AccessTokenVo;
 import com.tzld.longarticle.recommend.server.service.exterior.AccessTokenService;
 import org.apache.commons.lang3.StringUtils;
@@ -21,14 +22,17 @@ public class AccessTokenServiceImpl implements AccessTokenService {
     private RedisTemplate<String, String> redisTemplate;
 
     @Override
-    public AccessTokenVo getAccessToken(String secret) {
-        if (!SecretEnum.contains(secret)) {
+    public AccessTokenVo getAccessToken(AccessTokenParam param) {
+        if(param == null || StringUtils.isEmpty(param.getSecret())){
+            throw new RuntimeException("参数错误");
+        }
+        if (!SecretEnum.contains(param.getSecret())) {
             throw new RuntimeException("secret 不存在");
         }
         AccessTokenVo accessTokenVo = new AccessTokenVo();
-        String accessToken = redisTemplate.opsForValue().get(secret);
+        String accessToken = redisTemplate.opsForValue().get(param.getSecret());
         if (StringUtils.isNotEmpty(accessToken)) {
-            Long expire = redisTemplate.getExpire(secret, TimeUnit.SECONDS);
+            Long expire = redisTemplate.getExpire(param.getSecret(), TimeUnit.SECONDS);
             accessTokenVo.setAccessToken(accessToken);
             accessTokenVo.setExpires(expire);
             if (redisTemplate.opsForHash().size(ACCESS_TOKEN_LIST) > 20) {
@@ -42,7 +46,7 @@ public class AccessTokenServiceImpl implements AccessTokenService {
             }
         } else {
             String newAccessToken = UUID.randomUUID().toString().replace("-", "");
-            redisTemplate.opsForValue().set(secret, newAccessToken, 2L, TimeUnit.HOURS);
+            redisTemplate.opsForValue().set(param.getSecret(), newAccessToken, 2L, TimeUnit.HOURS);
             long expire = 7200L;
             long timestamp = System.currentTimeMillis() / 1000 + expire + 600;
             redisTemplate.opsForHash().put(ACCESS_TOKEN_LIST, newAccessToken, timestamp);

+ 3 - 2
long-article-recommend-service/src/main/java/com/tzld/longarticle/recommend/server/web/ThirdPartyController.java

@@ -1,6 +1,7 @@
 package com.tzld.longarticle.recommend.server.web;
 
 import com.tzld.longarticle.recommend.server.common.response.CommonResponse;
+import com.tzld.longarticle.recommend.server.model.param.AccessTokenParam;
 import com.tzld.longarticle.recommend.server.model.param.CallbackParam;
 import com.tzld.longarticle.recommend.server.model.vo.AccessTokenVo;
 import com.tzld.longarticle.recommend.server.model.param.PushMessageParam;
@@ -31,8 +32,8 @@ public class ThirdPartyController {
     private MessageCallbackProducer messageCallbackProducer;
 
     @PostMapping("/accessToken/get")
-    public CommonResponse<AccessTokenVo> getAccessToken(@RequestBody String secret) {
-        return CommonResponse.success(accessTokenService.getAccessToken(secret));
+    public CommonResponse<AccessTokenVo> getAccessToken(@RequestBody AccessTokenParam param) {
+        return CommonResponse.success(accessTokenService.getAccessToken(param));
     }
 
     @PostMapping("/pushMessage/get")