From a8f7c6adf4f2da32151ca32aefbca746cd6730af Mon Sep 17 00:00:00 2001
From: wangyu <727842003@qq.com>
Date: Mon, 20 Feb 2023 12:25:53 +0800
Subject: [PATCH] =?UTF-8?q?feat:=20=E5=8D=87=E7=BA=A71.1.0=EF=BC=8C?=
=?UTF-8?q?=E8=A7=A3=E5=86=B3get=E4=BC=A0=E5=8F=82?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 4 ++--
rest-proxy-api/pom.xml | 2 +-
rest-proxy-core/pom.xml | 2 +-
.../support/AbstractParamResolver.java | 22 ++++++++++++++++++-
4 files changed, 25 insertions(+), 5 deletions(-)
diff --git a/pom.xml b/pom.xml
index b51bc3e..d21236d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -13,7 +13,7 @@
group.flyfish
rest-proxy
- 1.0.9
+ 1.1.0
8
@@ -22,7 +22,7 @@
1.8
4.4
2.6
- 1.0.9
+ 1.1.0
pom
diff --git a/rest-proxy-api/pom.xml b/rest-proxy-api/pom.xml
index 0356bc1..469e25c 100644
--- a/rest-proxy-api/pom.xml
+++ b/rest-proxy-api/pom.xml
@@ -5,7 +5,7 @@
group.flyfish
rest-proxy
- 1.0.9
+ 1.1.0
4.0.0
diff --git a/rest-proxy-core/pom.xml b/rest-proxy-core/pom.xml
index 1447af5..9c73175 100644
--- a/rest-proxy-core/pom.xml
+++ b/rest-proxy-core/pom.xml
@@ -5,7 +5,7 @@
group.flyfish
rest-proxy
- 1.0.9
+ 1.1.0
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 1175aff..a8f3b2b 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,10 +21,30 @@ public abstract class AbstractParamResolver {
if (DataUtils.isNotEmpty(builder.getParams())) {
String start = builder.getUrl().contains("?") ? "&" : "?";
String params = builder.getParams().entrySet().stream()
- .map(entry -> entry.getKey() + "=" + (null == entry.getValue() ? "" : entry.getValue()))
+ .map(entry -> entry.getKey() + "=" + parseValue(entry.getValue()))
.collect(Collectors.joining("&"));
builder.url(builder.getUrl() + start + params);
}
return builder;
}
+
+ /**
+ * 解析值
+ *
+ * @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 "";
+ }
}