From 82f4eb8f95775e75b2761ce6f4d5b36ace10fa88 Mon Sep 17 00:00:00 2001 From: zhangyl Date: Thu, 8 Jan 2026 16:16:07 +0800 Subject: [PATCH 1/4] =?UTF-8?q?=E6=9B=B4=E6=96=B0README=E4=B8=AD=E5=85=B3?= =?UTF-8?q?=E4=BA=8EHttpClient=205.x=E7=9B=B8=E5=85=B3=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit miniapp默认使用HttpClient 5.x --- README.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 54af600be..080b831d1 100644 --- a/README.md +++ b/README.md @@ -133,10 +133,10 @@ **Spring Boot 配置示例:** ```properties -# 使用 HttpClient 5.x(推荐,MP/CP/Channel/QiDian 模块默认) +# 使用 HttpClient 5.x(推荐,MP/MiniApp/CP/Channel/QiDian 模块默认) wx.mp.config-storage.http-client-type=HttpComponents -# 使用 HttpClient 4.x(兼容模式,MiniApp 模块默认) +# 使用 HttpClient 4.x(兼容模式) wx.mp.config-storage.http-client-type=HttpClient # 使用 OkHttp @@ -153,11 +153,10 @@ wx.mp.config-storage.http-client-type=HTTP_COMPONENTS # 注意使用大写下 ``` **注意事项:** -1. **MiniApp 模块**已提供 `HttpComponents`(HttpClient 5.x)类型的配置选项,但当前默认仍为 HttpClient 4.x;如需启用 HttpClient 5.x,请确保所使用的集成模块(如 `wx-java-miniapp-spring-boot-starter`、`wx-java-miniapp-solon-plugin`)版本已支持该选项 -2. **MP、Channel、QiDian 模块**已完整支持 HttpClient 5.x,默认推荐使用 -3. **CP 模块**的支持情况取决于具体使用的 Starter 版本,请参考对应模块文档 -4. 如需使用 OkHttp 或 Jodd-http,需在项目中添加对应的依赖(scope为provided) -5. HttpClient 4.x 和 HttpClient 5.x 可以共存,按需配置即可 +1. **MP、MiniApp、Channel、QiDian 模块**已完整支持 HttpClient 5.x,默认推荐使用 +2. **CP 模块**的支持情况取决于具体使用的 Starter 版本,请参考对应模块文档 +3. 如需使用 OkHttp 或 Jodd-http,需在项目中添加对应的依赖(scope为provided) +4. HttpClient 4.x 和 HttpClient 5.x 可以共存,按需配置即可 --------------------------------- From 3e9063ddc2ae82283185d1800bb2a50323463ee8 Mon Sep 17 00:00:00 2001 From: zhangyl Date: Thu, 8 Jan 2026 20:55:27 +0800 Subject: [PATCH 2/4] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E6=94=AF=E4=BB=98starter?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E9=85=8D=E7=BD=AE=E9=80=80=E6=AC=BE=E7=BB=93?= =?UTF-8?q?=E6=9E=9C=E5=9B=9E=E8=B0=83URL?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../starter/wxjava/pay/config/WxPayAutoConfiguration.java | 1 + .../starter/wxjava/pay/properties/WxPayProperties.java | 5 +++++ .../binarywang/wxpay/bean/request/WxPayRefundRequest.java | 4 +++- .../com/github/binarywang/wxpay/config/WxPayConfig.java | 4 ++++ .../binarywang/wxpay/service/impl/BaseWxPayServiceImpl.java | 6 ++++++ 5 files changed, 19 insertions(+), 1 deletion(-) diff --git a/spring-boot-starters/wx-java-pay-spring-boot-starter/src/main/java/com/binarywang/spring/starter/wxjava/pay/config/WxPayAutoConfiguration.java b/spring-boot-starters/wx-java-pay-spring-boot-starter/src/main/java/com/binarywang/spring/starter/wxjava/pay/config/WxPayAutoConfiguration.java index 5a794de7e..758fd929a 100644 --- a/spring-boot-starters/wx-java-pay-spring-boot-starter/src/main/java/com/binarywang/spring/starter/wxjava/pay/config/WxPayAutoConfiguration.java +++ b/spring-boot-starters/wx-java-pay-spring-boot-starter/src/main/java/com/binarywang/spring/starter/wxjava/pay/config/WxPayAutoConfiguration.java @@ -51,6 +51,7 @@ public WxPayService wxPayService() { payConfig.setKeyPath(StringUtils.trimToNull(this.properties.getKeyPath())); payConfig.setUseSandboxEnv(this.properties.isUseSandboxEnv()); payConfig.setNotifyUrl(StringUtils.trimToNull(this.properties.getNotifyUrl())); + payConfig.setRefundNotifyUrl(StringUtils.trimToNull(this.properties.getRefundNotifyUrl())); //以下是apiv3以及支付分相关 payConfig.setServiceId(StringUtils.trimToNull(this.properties.getServiceId())); payConfig.setPayScoreNotifyUrl(StringUtils.trimToNull(this.properties.getPayScoreNotifyUrl())); diff --git a/spring-boot-starters/wx-java-pay-spring-boot-starter/src/main/java/com/binarywang/spring/starter/wxjava/pay/properties/WxPayProperties.java b/spring-boot-starters/wx-java-pay-spring-boot-starter/src/main/java/com/binarywang/spring/starter/wxjava/pay/properties/WxPayProperties.java index 8212e3b01..25f7d7c02 100644 --- a/spring-boot-starters/wx-java-pay-spring-boot-starter/src/main/java/com/binarywang/spring/starter/wxjava/pay/properties/WxPayProperties.java +++ b/spring-boot-starters/wx-java-pay-spring-boot-starter/src/main/java/com/binarywang/spring/starter/wxjava/pay/properties/WxPayProperties.java @@ -64,6 +64,11 @@ public class WxPayProperties { */ private String notifyUrl; + /** + * 退款结果异步回调地址,通知url必须为直接可访问的url,不能携带参数 + */ + private String refundNotifyUrl; + /** * 微信支付分回调地址 */ diff --git a/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/bean/request/WxPayRefundRequest.java b/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/bean/request/WxPayRefundRequest.java index e145644d9..b0cbcf4e7 100644 --- a/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/bean/request/WxPayRefundRequest.java +++ b/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/bean/request/WxPayRefundRequest.java @@ -230,7 +230,9 @@ public void checkAndSign(WxPayConfig config) throws WxPayException { if (StringUtils.isBlank(this.getOpUserId())) { this.setOpUserId(config.getMchId()); } - + if (StringUtils.isBlank(this.getNotifyUrl())) { + this.setNotifyUrl(config.getRefundNotifyUrl()); + } super.checkAndSign(config); } diff --git a/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java b/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java index b42451a66..380a6439d 100644 --- a/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java +++ b/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java @@ -100,6 +100,10 @@ public class WxPayConfig { * 微信支付异步回掉地址,通知url必须为直接可访问的url,不能携带参数. */ private String notifyUrl; + /** + * 退款结果异步回调地址,通知url必须为直接可访问的url,不能携带参数. + */ + private String refundNotifyUrl; /** * 交易类型. *
diff --git a/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/service/impl/BaseWxPayServiceImpl.java b/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/service/impl/BaseWxPayServiceImpl.java
index 2e896cda7..5347099a0 100644
--- a/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/service/impl/BaseWxPayServiceImpl.java
+++ b/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/service/impl/BaseWxPayServiceImpl.java
@@ -263,6 +263,9 @@ public WxPayRefundResult refundV2(WxPayRefundRequest request) throws WxPayExcept
 
   @Override
   public WxPayRefundV3Result refundV3(WxPayRefundV3Request request) throws WxPayException {
+    if (StringUtils.isBlank(request.getNotifyUrl())) {
+      request.setNotifyUrl(this.getConfig().getRefundNotifyUrl());
+    }
     String url = String.format("%s/v3/refund/domestic/refunds", this.getPayBaseUrl());
     String response = this.postV3WithWechatpaySerial(url, GSON.toJson(request));
     return GSON.fromJson(response, WxPayRefundV3Result.class);
@@ -270,6 +273,9 @@ public WxPayRefundV3Result refundV3(WxPayRefundV3Request request) throws WxPayEx
 
   @Override
   public WxPayRefundV3Result partnerRefundV3(WxPayPartnerRefundV3Request request) throws WxPayException {
+    if (StringUtils.isBlank(request.getNotifyUrl())) {
+      request.setNotifyUrl(this.getConfig().getRefundNotifyUrl());
+    }
     if (StringUtils.isBlank(request.getSubMchid())) {
       request.setSubMchid(this.getConfig().getSubMchId());
     }

From 69b83053c2a3cb77d8c70a7c061f3d0f1e8ff6ec Mon Sep 17 00:00:00 2001
From: Binary Wang 
Date: Fri, 9 Jan 2026 13:23:46 +0800
Subject: [PATCH 3/4] Update
 weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
---
 .../java/com/github/binarywang/wxpay/config/WxPayConfig.java    | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java b/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java
index 380a6439d..88e544e67 100644
--- a/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java
+++ b/weixin-java-pay/src/main/java/com/github/binarywang/wxpay/config/WxPayConfig.java
@@ -97,7 +97,7 @@ public class WxPayConfig {
    */
   private String subMchId;
   /**
-   * 微信支付异步回掉地址,通知url必须为直接可访问的url,不能携带参数.
+   * 微信支付异步回调地址,通知url必须为直接可访问的url,不能携带参数.
    */
   private String notifyUrl;
   /**

From 91d3ef3ee8db2f0b6d5b51a3d48c9ecb9bc8de60 Mon Sep 17 00:00:00 2001
From: zhangyl 
Date: Fri, 9 Jan 2026 13:48:16 +0800
Subject: [PATCH 4/4] =?UTF-8?q?feat:=E6=94=AF=E6=8C=81=E6=94=AF=E4=BB=98?=
 =?UTF-8?q?=20Solon=20=E6=8F=92=E4=BB=B6=E9=85=8D=E7=BD=AE=E6=94=AF?=
 =?UTF-8?q?=E4=BB=98=E5=9B=9E=E8=B0=83=E5=9C=B0=E5=9D=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 .../solon/wxjava/pay/config/WxPayAutoConfiguration.java      | 1 +
 .../solon/wxjava/pay/properties/WxPayProperties.java         | 5 +++++
 2 files changed, 6 insertions(+)

diff --git a/solon-plugins/wx-java-pay-solon-plugin/src/main/java/com/binarywang/solon/wxjava/pay/config/WxPayAutoConfiguration.java b/solon-plugins/wx-java-pay-solon-plugin/src/main/java/com/binarywang/solon/wxjava/pay/config/WxPayAutoConfiguration.java
index 94112c7d9..3ef7456da 100644
--- a/solon-plugins/wx-java-pay-solon-plugin/src/main/java/com/binarywang/solon/wxjava/pay/config/WxPayAutoConfiguration.java
+++ b/solon-plugins/wx-java-pay-solon-plugin/src/main/java/com/binarywang/solon/wxjava/pay/config/WxPayAutoConfiguration.java
@@ -47,6 +47,7 @@ public WxPayService wxPayService() {
     payConfig.setKeyPath(StringUtils.trimToNull(this.properties.getKeyPath()));
     payConfig.setUseSandboxEnv(this.properties.isUseSandboxEnv());
     payConfig.setNotifyUrl(StringUtils.trimToNull(this.properties.getNotifyUrl()));
+    payConfig.setRefundNotifyUrl(StringUtils.trimToNull(this.properties.getRefundNotifyUrl()));
     //以下是apiv3以及支付分相关
     payConfig.setServiceId(StringUtils.trimToNull(this.properties.getServiceId()));
     payConfig.setPayScoreNotifyUrl(StringUtils.trimToNull(this.properties.getPayScoreNotifyUrl()));
diff --git a/solon-plugins/wx-java-pay-solon-plugin/src/main/java/com/binarywang/solon/wxjava/pay/properties/WxPayProperties.java b/solon-plugins/wx-java-pay-solon-plugin/src/main/java/com/binarywang/solon/wxjava/pay/properties/WxPayProperties.java
index 0b035e983..d394fefbd 100644
--- a/solon-plugins/wx-java-pay-solon-plugin/src/main/java/com/binarywang/solon/wxjava/pay/properties/WxPayProperties.java
+++ b/solon-plugins/wx-java-pay-solon-plugin/src/main/java/com/binarywang/solon/wxjava/pay/properties/WxPayProperties.java
@@ -87,6 +87,11 @@ public class WxPayProperties {
    */
   private String notifyUrl;
 
+  /**
+   * 退款结果异步回调地址,通知url必须为直接可访问的url,不能携带参数.
+   */
+  private String refundNotifyUrl;
+
   /**
    * 微信支付分授权回调地址
    */