浏览代码

转发内网请求

xiewj 2 年之前
父节点
当前提交
cf782f9e26

+ 3 - 2
sxz-application/src/main/resources/application-prod.properties

@@ -94,8 +94,8 @@ oss.type=oss
 prefix.ali=https://houseoss.4dkankan.com/
 main.url=https://www.4dkankan.com/
 build.url=http://192.168.0.49:8100/
-light.build.url=http://192.168.0.49:8100/
-model.build.url=http://192.168.0.49:8100/
+light.build.url=http://192.168.0.49:5000/
+model.build.url=http://192.168.0.49:5000/
 #.max转datasmith和obj加减面url
 max.obj.url=http://192.168.0.75:8080/
 maxToDatasmith.url=http://192.168.0.75:8001/
@@ -105,3 +105,4 @@ driveLetter=Z:
 #雪花ID生成终端ID
 snowflake.wordId=1
 ws.port=8123
+local.network.url=http://192.168.0.49:5000/

+ 3 - 2
sxz-application/src/main/resources/application-uat.properties

@@ -86,8 +86,8 @@ oss.type=oss
 prefix.ali=https://houseoss.4dkankan.com/
 main.url=https://test.4dkankan.com/
 build.url=http://192.168.0.49:8100/
-light.build.url=http://192.168.0.49:8100/
-model.build.url=http://192.168.0.49:8100/
+light.build.url=http://192.168.0.49:5000/
+model.build.url=http://192.168.0.49:5000/
 #.max转datasmith和obj加减面url
 max.obj.url=http://192.168.0.75:8080/
 maxToDatasmith.url=http://192.168.0.75:8001/
@@ -99,3 +99,4 @@ server.tomcat.basedir=/mnt/tomcatTmp
 #雪花ID生成终端ID
 snowflake.wordId=1
 ws.port=8123
+local.network.url=http://192.168.0.49:5000/

+ 46 - 0
sxz-core/src/main/java/com/fdkk/sxz/webApi/controller/OfflineController.java

@@ -1,12 +1,17 @@
 package com.fdkk.sxz.webApi.controller;
 
 import cn.hutool.core.io.FileUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.http.HttpRequest;
+import com.alibaba.fastjson.JSONObject;
 import com.fdkk.sxz.annotation.auth.NoAuthentication;
 import com.fdkk.sxz.annotation.log.AroundLog;
 import com.fdkk.sxz.base.Result;
 import com.fdkk.sxz.util.CreateObjUtil;
 import com.fdkk.sxz.util.SnowIdUtil;
 import com.fdkk.sxz.util.UploadToOssUtil;
+import com.fdkk.sxz.vo.request.RequestForwardPost;
 import com.fdkk.sxz.vo.request.RequestOfflineConvert;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
@@ -39,6 +44,12 @@ public class OfflineController {
     @Autowired
     private SnowIdUtil snowIdUtil;
 
+    @Value("${local.network.url}")
+    private String localNetworkUrl;
+
+    @Value("${main.url}")
+    private String mainUrl;
+
     /**
      * 转换modeldata
      *
@@ -62,4 +73,39 @@ public class OfflineController {
         return Result.success();
     }
 
+    /**
+     * 转换modeldata
+     *
+     * @param dto
+     * @return
+     */
+    @ApiOperation("转发内网请求")
+    @RequestMapping(value = "/forwardPost", method = RequestMethod.POST)
+    @ApiImplicitParams({
+            @ApiImplicitParam(name = "params", value = "参数", dataType = "String"),
+            @ApiImplicitParam(name = "action", value = "接口名称", dataType = "String")})
+    @NoAuthentication
+    public Object forwardPost(HttpServletRequest request, @RequestBody RequestForwardPost dto) {
+        if (ObjectUtil.isNotNull(request.getHeader("token")) && StrUtil.isNotEmpty(request.getHeader("token"))) {
+            String url = mainUrl + "api/sso/user/checkToken";
+            OfflineController.log.info("验证token的url:{}", url);
+            String res = HttpRequest.post(localNetworkUrl + dto.getAction())
+                    .header("token", request.getHeader("token"))
+                    .execute().body();
+            JSONObject resObject = JSONObject.parseObject(res);
+            if (null != resObject) {
+                if (resObject.containsKey("code")) {
+                    int code = resObject.getInteger("code");
+                    if (code != 0) {
+                        return resObject;
+                    }
+                }
+            }
+        }
+        String result2 = HttpRequest.post(localNetworkUrl + dto.getAction())
+                .body(dto.getParams())
+                .execute().body();
+        return Result.success(result2);
+
+    }
 }

+ 14 - 0
sxz-modules/src/main/java/com/fdkk/sxz/vo/request/RequestForwardPost.java

@@ -0,0 +1,14 @@
+package com.fdkk.sxz.vo.request;
+
+import lombok.Data;
+
+/**
+ * Created by Hb_zzZ on 2021/4/8.
+ */
+@Data
+public class RequestForwardPost {
+
+    private String params;
+
+    private String action;
+}