diff --git a/changelog.md b/changelog.md
index 85cb353d..128e243c 100644
--- a/changelog.md
+++ b/changelog.md
@@ -4,6 +4,10 @@
- 支持预发布、灰度发布环境
+## 1.13.5
+
+- 修复postJson下version获取不到问题
+
## 1.13.4
- 修复admin服务列表最后更新时间不显示问题
diff --git a/sop-admin/sop-admin-server/pom.xml b/sop-admin/sop-admin-server/pom.xml
index 5a04b2bb..c890a936 100644
--- a/sop-admin/sop-admin-server/pom.xml
+++ b/sop-admin/sop-admin-server/pom.xml
@@ -32,7 +32,7 @@
com.gitee.sop
sop-registry-api
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
diff --git a/sop-common/pom.xml b/sop-common/pom.xml
index b504064c..b9474842 100644
--- a/sop-common/pom.xml
+++ b/sop-common/pom.xml
@@ -5,7 +5,7 @@
4.0.0
com.gitee.sop
sop-common
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
pom
diff --git a/sop-common/sop-gateway-common/pom.xml b/sop-common/sop-gateway-common/pom.xml
index 69d81f49..4944f39f 100644
--- a/sop-common/sop-gateway-common/pom.xml
+++ b/sop-common/sop-gateway-common/pom.xml
@@ -5,11 +5,11 @@
com.gitee.sop
sop-common
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
../pom.xml
sop-gateway-common
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
jar
sop-gateway-common
diff --git a/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/gateway/param/GatewayParamBuilder.java b/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/gateway/param/GatewayParamBuilder.java
index be9f0b68..dcdbe855 100644
--- a/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/gateway/param/GatewayParamBuilder.java
+++ b/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/gateway/param/GatewayParamBuilder.java
@@ -22,4 +22,9 @@ public class GatewayParamBuilder extends BaseParamBuilder {
public String getIP(ServerWebExchange ctx) {
return ctx.getRequest().getRemoteAddress().getAddress().getHostAddress();
}
+
+ @Override
+ public void setVersionInHeader(ServerWebExchange ctx, String headerName, String version) {
+ ctx.getRequest().getHeaders().add(headerName, version);
+ }
}
diff --git a/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/param/BaseParamBuilder.java b/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/param/BaseParamBuilder.java
index 8324cfb3..4518ff89 100644
--- a/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/param/BaseParamBuilder.java
+++ b/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/param/BaseParamBuilder.java
@@ -31,6 +31,14 @@ public abstract class BaseParamBuilder implements ParamBuilder {
*/
public abstract String getIP(T ctx);
+ /**
+ * 将版本号添加到header中
+ * @param ctx 请求request
+ * @param headerName headerName
+ * @param version 版本号
+ */
+ public abstract void setVersionInHeader(T ctx, String headerName, String version);
+
@Override
public ApiParam build(T ctx) {
ApiParam apiParam = this.newApiParam(ctx);
@@ -38,6 +46,7 @@ public abstract class BaseParamBuilder implements ParamBuilder {
apiParam.putAll(requestParams);
this.initOtherProperty(apiParam);
apiParam.setIp(this.getIP(ctx));
+ this.setVersionInHeader(ctx, ParamNames.HEADER_VERSION_NAME, apiParam.fetchVersion());
return apiParam;
}
diff --git a/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/param/ParamNames.java b/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/param/ParamNames.java
index f58309c8..a1c65cbc 100644
--- a/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/param/ParamNames.java
+++ b/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/param/ParamNames.java
@@ -45,7 +45,7 @@ public class ParamNames {
/** 返回sign名称 */
public static String RESPONSE_SIGN_NAME = "sign";
- public static String GRAY_HEADER_VERSION_NAME = "sop_gray_version";
+ public static String HEADER_VERSION_NAME = "sop-version";
}
diff --git a/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/zuul/param/ZuulParamBuilder.java b/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/zuul/param/ZuulParamBuilder.java
index 96a3bfbe..032de9d8 100644
--- a/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/zuul/param/ZuulParamBuilder.java
+++ b/sop-common/sop-gateway-common/src/main/java/com/gitee/sop/gatewaycommon/zuul/param/ZuulParamBuilder.java
@@ -52,6 +52,11 @@ public class ZuulParamBuilder extends BaseParamBuilder {
return RequestUtil.getIP(ctx.getRequest());
}
+ @Override
+ public void setVersionInHeader(RequestContext ctx, String headerName, String version) {
+ ctx.addZuulRequestHeader(headerName, version);
+ }
+
@Override
protected ApiParam newApiParam(RequestContext ctx) {
ApiParam apiParam = super.newApiParam(ctx);
diff --git a/sop-common/sop-registry-api/pom.xml b/sop-common/sop-registry-api/pom.xml
index f3bfcbe7..f2aa4b67 100644
--- a/sop-common/sop-registry-api/pom.xml
+++ b/sop-common/sop-registry-api/pom.xml
@@ -5,7 +5,7 @@
4.0.0
com.gitee.sop
sop-registry-api
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
UTF-8
diff --git a/sop-common/sop-registry-api/src/main/java/com/gitee/sop/registryapi/bean/HttpTool.java b/sop-common/sop-registry-api/src/main/java/com/gitee/sop/registryapi/bean/HttpTool.java
index f323e0d7..ee280d4f 100644
--- a/sop-common/sop-registry-api/src/main/java/com/gitee/sop/registryapi/bean/HttpTool.java
+++ b/sop-common/sop-registry-api/src/main/java/com/gitee/sop/registryapi/bean/HttpTool.java
@@ -1,4 +1,4 @@
-package com.gitee.sop.registryapi.bean;
+package com.gitee.sop.websiteserver.bean;
import lombok.Data;
import lombok.Getter;
@@ -110,8 +110,8 @@ public class HttpTool {
* @return
* @throws IOException
*/
- public String request(String url, Map form, Map header, HTTPMethod method) throws IOException {
- Request.Builder requestBuilder = buildRequestBuilder(url, form, method.value());
+ public String request(String url, Map form, Map header, HTTPMethod method) throws IOException {
+ Request.Builder requestBuilder = buildRequestBuilder(url, form, method);
// 添加header
addHeader(requestBuilder, header);
@@ -153,21 +153,21 @@ public class HttpTool {
}
}
- public static Request.Builder buildRequestBuilder(String url, Map form, String method) {
+ public static Request.Builder buildRequestBuilder(String url, Map form, HTTPMethod method) {
switch (method) {
- case "get":
+ case GET:
return new Request.Builder()
.url(buildHttpUrl(url, form))
.get();
- case "head":
+ case HEAD:
return new Request.Builder()
.url(buildHttpUrl(url, form))
.head();
- case "put":
+ case PUT:
return new Request.Builder()
.url(url)
.put(buildFormBody(form));
- case "delete":
+ case DELETE:
return new Request.Builder()
.url(url)
.delete(buildFormBody(form));
@@ -178,18 +178,18 @@ public class HttpTool {
}
}
- public static HttpUrl buildHttpUrl(String url, Map form) {
+ public static HttpUrl buildHttpUrl(String url, Map form) {
HttpUrl.Builder urlBuilder = HttpUrl.parse(url).newBuilder();
- for (Map.Entry entry : form.entrySet()) {
- urlBuilder.addQueryParameter(entry.getKey(), String.valueOf(entry.getValue()));
+ for (Map.Entry entry : form.entrySet()) {
+ urlBuilder.addQueryParameter(entry.getKey(), entry.getValue());
}
return urlBuilder.build();
}
- public static FormBody buildFormBody(Map form) {
+ public static FormBody buildFormBody(Map form) {
FormBody.Builder paramBuilder = new FormBody.Builder(StandardCharsets.UTF_8);
- for (Map.Entry entry : form.entrySet()) {
- paramBuilder.add(entry.getKey(), String.valueOf(entry.getValue()));
+ for (Map.Entry entry : form.entrySet()) {
+ paramBuilder.add(entry.getKey(), entry.getValue());
}
return paramBuilder.build();
}
diff --git a/sop-common/sop-service-common/pom.xml b/sop-common/sop-service-common/pom.xml
index 2be58d1f..a0b12082 100644
--- a/sop-common/sop-service-common/pom.xml
+++ b/sop-common/sop-service-common/pom.xml
@@ -6,11 +6,11 @@
com.gitee.sop
sop-common
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
../pom.xml
sop-service-common
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
jar
sop-service-common
diff --git a/sop-common/sop-service-common/src/main/java/com/gitee/sop/servercommon/bean/ParamNames.java b/sop-common/sop-service-common/src/main/java/com/gitee/sop/servercommon/bean/ParamNames.java
index 7d982663..be46aab4 100644
--- a/sop-common/sop-service-common/src/main/java/com/gitee/sop/servercommon/bean/ParamNames.java
+++ b/sop-common/sop-service-common/src/main/java/com/gitee/sop/servercommon/bean/ParamNames.java
@@ -47,5 +47,7 @@ public class ParamNames {
/** 时间戳格式 */
public static String TIMESTAMP_PATTERN = "yyyy-MM-dd HH:mm:ss";
+ public static String HEADER_VERSION_NAME = "sop-version";
+
}
diff --git a/sop-common/sop-service-common/src/main/java/com/gitee/sop/servercommon/mapping/ApiMappingRequestCondition.java b/sop-common/sop-service-common/src/main/java/com/gitee/sop/servercommon/mapping/ApiMappingRequestCondition.java
index 4a94ed4a..e6a2739c 100644
--- a/sop-common/sop-service-common/src/main/java/com/gitee/sop/servercommon/mapping/ApiMappingRequestCondition.java
+++ b/sop-common/sop-service-common/src/main/java/com/gitee/sop/servercommon/mapping/ApiMappingRequestCondition.java
@@ -45,11 +45,10 @@ public class ApiMappingRequestCondition implements RequestCondition
com.gitee.sop
sop-service-common
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
org.springframework.cloud
diff --git a/sop-example/sop-book/sop-book-web/pom.xml b/sop-example/sop-book/sop-book-web/pom.xml
index 04be1bc8..c1610423 100644
--- a/sop-example/sop-book/sop-book-web/pom.xml
+++ b/sop-example/sop-book/sop-book-web/pom.xml
@@ -24,7 +24,7 @@
com.gitee.sop
sop-service-common
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
com.gitee.sop
diff --git a/sop-example/sop-easyopen/pom.xml b/sop-example/sop-easyopen/pom.xml
index d7422ed6..ce2fe39c 100644
--- a/sop-example/sop-easyopen/pom.xml
+++ b/sop-example/sop-easyopen/pom.xml
@@ -29,7 +29,7 @@
com.gitee.sop
sop-service-common
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
org.springframework.cloud
diff --git a/sop-example/sop-springmvc/pom.xml b/sop-example/sop-springmvc/pom.xml
index 4652ae4f..84f68b37 100644
--- a/sop-example/sop-springmvc/pom.xml
+++ b/sop-example/sop-springmvc/pom.xml
@@ -20,7 +20,7 @@
com.gitee.sop
sop-service-common
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
diff --git a/sop-example/sop-story/sop-story-web/pom.xml b/sop-example/sop-story/sop-story-web/pom.xml
index 254cbf45..c80b2131 100644
--- a/sop-example/sop-story/sop-story-web/pom.xml
+++ b/sop-example/sop-story/sop-story-web/pom.xml
@@ -24,7 +24,7 @@
com.gitee.sop
sop-service-common
- 1.13.4-SNAPSHOT
+ 1.13.5-SNAPSHOT
com.gitee.sop
diff --git a/sop-example/sop-story/sop-story-web/src/main/java/com/gitee/sop/storyweb/controller/AlipayController.java b/sop-example/sop-story/sop-story-web/src/main/java/com/gitee/sop/storyweb/controller/AlipayController.java
index c47819b4..563c1721 100644
--- a/sop-example/sop-story/sop-story-web/src/main/java/com/gitee/sop/storyweb/controller/AlipayController.java
+++ b/sop-example/sop-story/sop-story-web/src/main/java/com/gitee/sop/storyweb/controller/AlipayController.java
@@ -30,7 +30,7 @@ public class AlipayController {
// http://localhost:2222/story_get
// 原生的接口,可正常调用
@RequestMapping("story_get")
- public Story getStory4() {
+ public Story story_get() {
Story story = new Story();
story.setId(1);
story.setName("海底小纵队(原生)");
@@ -117,7 +117,7 @@ public class AlipayController {
// http://localhost:2222/getStory2?version=2.1
// 遗留接口具备开放平台能力,在原来的基础上加版本号
@ApiAbility(version = "2.1")
- @RequestMapping("getStory2")
+ @GetMapping("getStory2")
public Story getStory2_1() {
Story story = new Story();
story.setId(1);
diff --git a/sop-example/sop-story/sop-story-web/src/main/java/com/gitee/sop/storyweb/controller/PostJsonController.java b/sop-example/sop-story/sop-story-web/src/main/java/com/gitee/sop/storyweb/controller/PostJsonController.java
index 0bc5e45a..8bed5cf8 100644
--- a/sop-example/sop-story/sop-story-web/src/main/java/com/gitee/sop/storyweb/controller/PostJsonController.java
+++ b/sop-example/sop-story/sop-story-web/src/main/java/com/gitee/sop/storyweb/controller/PostJsonController.java
@@ -37,5 +37,25 @@ public class PostJsonController {
return story;
}
+ /**
+ * 演示客户端使用json方式请求(application/json)
+ * @param param
+ * @return
+ */
+ @ApiMapping(value = "demo.post.json", version = "1.2")
+ public Story postJson2(StoryParam param) {
+ // 获取开放平台请求参数
+ OpenContext openContext = ServiceContext.getCurrentContext().getOpenContext();
+ List