diff --git a/pom.xml b/pom.xml
index d21236d..53d2c17 100644
--- a/pom.xml
+++ b/pom.xml
@@ -13,7 +13,7 @@
group.flyfish
rest-proxy
- 1.1.0
+ 1.1.1
8
@@ -22,7 +22,7 @@
1.8
4.4
2.6
- 1.1.0
+ 1.1.1
pom
diff --git a/rest-proxy-api/pom.xml b/rest-proxy-api/pom.xml
index 469e25c..12e66da 100644
--- a/rest-proxy-api/pom.xml
+++ b/rest-proxy-api/pom.xml
@@ -5,7 +5,7 @@
group.flyfish
rest-proxy
- 1.1.0
+ 1.1.1
4.0.0
diff --git a/rest-proxy-core/pom.xml b/rest-proxy-core/pom.xml
index 9c73175..20e8151 100644
--- a/rest-proxy-core/pom.xml
+++ b/rest-proxy-core/pom.xml
@@ -5,7 +5,7 @@
group.flyfish
rest-proxy
- 1.1.0
+ 1.1.1
4.0.0
diff --git a/rest-proxy-core/src/main/java/group/flyfish/rest/core/resolver/support/AbstractParamResolver.java b/rest-proxy-core/src/main/java/group/flyfish/rest/core/resolver/support/AbstractParamResolver.java
index a8f3b2b..f54af63 100644
--- a/rest-proxy-core/src/main/java/group/flyfish/rest/core/resolver/support/AbstractParamResolver.java
+++ b/rest-proxy-core/src/main/java/group/flyfish/rest/core/resolver/support/AbstractParamResolver.java
@@ -21,7 +21,7 @@ public abstract class AbstractParamResolver {
if (DataUtils.isNotEmpty(builder.getParams())) {
String start = builder.getUrl().contains("?") ? "&" : "?";
String params = builder.getParams().entrySet().stream()
- .map(entry -> entry.getKey() + "=" + parseValue(entry.getValue()))
+ .map(entry -> entry.getKey() + "=" + valueOf(entry.getValue()))
.collect(Collectors.joining("&"));
builder.url(builder.getUrl() + start + params);
}
@@ -34,14 +34,10 @@ public abstract class AbstractParamResolver {
* @param value 值
* @return 结果
*/
- private String parseValue(Object value) {
+ private String valueOf(Object value) {
if (value instanceof String) {
return (String) value;
}
- if (value instanceof Iterable) {
- Iterable extends CharSequence> mapped = DataUtils.cast(value);
- return String.join(",", mapped);
- }
if (null != value) {
return String.valueOf(value);
}
diff --git a/rest-proxy-core/src/main/java/group/flyfish/rest/registry/proxy/support/resolvers/RestParamArgumentResolver.java b/rest-proxy-core/src/main/java/group/flyfish/rest/registry/proxy/support/resolvers/RestParamArgumentResolver.java
index 271dfb8..49d5307 100644
--- a/rest-proxy-core/src/main/java/group/flyfish/rest/registry/proxy/support/resolvers/RestParamArgumentResolver.java
+++ b/rest-proxy-core/src/main/java/group/flyfish/rest/registry/proxy/support/resolvers/RestParamArgumentResolver.java
@@ -56,7 +56,7 @@ public class RestParamArgumentResolver implements RestArgumentResolver {
if (context.getMethod().isMergeBody()) {
context.setBody(name, value);
} else {
- context.setParam(name, value);
+ context.setParam(name, parseValue(value));
}
}
}
@@ -79,7 +79,7 @@ public class RestParamArgumentResolver implements RestArgumentResolver {
Map values = DataUtils.cast(value);
values.forEach((k, v) -> {
if (null != v) {
- context.setParam(k, String.valueOf(v));
+ context.setParam(k, parseValue(v));
}
});
} else {
@@ -95,10 +95,30 @@ public class RestParamArgumentResolver implements RestArgumentResolver {
log.error("【Rest客户端】尝试解析参数时发生异常!获取bean的属性表失败!{}", e.getMessage(), e);
}
if (null != v) {
- context.setParam(propertyDescriptor.getName(), String.valueOf(v));
+ context.setParam(propertyDescriptor.getName(), parseValue(v));
}
}
}
}
}
+
+ /**
+ * 解析值
+ *
+ * @param value 值
+ * @return 结果
+ */
+ private String parseValue(Object value) {
+ if (value instanceof String) {
+ return (String) value;
+ }
+ if (value instanceof Iterable) {
+ Iterable extends CharSequence> mapped = DataUtils.cast(value);
+ return String.join(",", mapped);
+ }
+ if (null != value) {
+ return String.valueOf(value);
+ }
+ return "";
+ }
}