From b6a8721bd1850f551b94374bed517f64fd29d29b Mon Sep 17 00:00:00 2001 From: Binary Wang Date: Mon, 19 Aug 2024 23:01:33 +0800 Subject: [PATCH] =?UTF-8?q?:art:=20=E4=BC=98=E5=8C=96=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=EF=BC=8C=E8=A7=84=E8=8C=83=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../miniapp/bean/xpay/WxMaXPaySigParams.java | 47 ++++++++----------- 1 file changed, 20 insertions(+), 27 deletions(-) diff --git a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/bean/xpay/WxMaXPaySigParams.java b/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/bean/xpay/WxMaXPaySigParams.java index 3e11c83b2..abe6b2b98 100644 --- a/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/bean/xpay/WxMaXPaySigParams.java +++ b/weixin-java-miniapp/src/main/java/cn/binarywang/wx/miniapp/bean/xpay/WxMaXPaySigParams.java @@ -22,14 +22,12 @@ public class WxMaXPaySigParams implements Serializable { public String signUriWithBoth(String url, String postData) { final String sig = this.calcSig(postData); final String paySig = this.calcPaySig(url, postData); - final String uri = String.format(url, paySig, sig); - return uri; + return String.format(url, paySig, sig); } public String signUriWithPay(String url, String postData) { final String paySig = this.calcPaySig(url, postData); - final String uri = String.format(url, paySig); - return uri; + return String.format(url, paySig); } public String signUriWithUser(String url, String postData) { @@ -57,35 +55,30 @@ public class WxMaXPaySigParams implements Serializable { public String calcSig(String postBody) { String sk = StringUtils.trimToEmpty(this.sessionKey); - final String sig = calcSignature(postBody, sk); - return sig; + return calcSignature(postBody, sk); } + /** + * 用户登录态signature签名算法 + * + * @param postBody - http POST的数据包体 + * @param sessionKey - 当前用户有效的session_key,参考auth.code2Session接口 + * @return 用户登录态签名signature + */ protected String calcSignature(String postBody, String sessionKey) { -// """ 用户登录态signature签名算法 -// Args: -// postBody - http POST的数据包体 -// sessionKey - 当前用户有效的session_key,参考auth.code2Session接口 -// Returns: -// 用户登录态签名signature -// """ - String needSignData = postBody; - String signature = SignUtils.createHmacSha256Sign(needSignData, sessionKey); - return signature; + return SignUtils.createHmacSha256Sign(postBody, sessionKey); } - + /** + * pay_sig签名算法 + * + * @param uri - 当前请求的API的uri部分,不带query_string 例如:/xpay/query_user_balance + * @param postBody - http POST的数据包体 + * @param appKey - 对应环境的AppKey + * @return 支付请求签名pay_sig + */ protected String calcPaySignature(String uri, String postBody, String appKey) { -// """ pay_sig签名算法 -// Args: -// uri - 当前请求的API的uri部分,不带query_string 例如:/xpay/query_user_balance -// postBody - http POST的数据包体 -// appKey - 对应环境的AppKey -// Returns: -// 支付请求签名pay_sig -// """ String needSignData = uri + '&' + postBody; - String paySig = SignUtils.createHmacSha256Sign(needSignData, appKey); - return paySig; + return SignUtils.createHmacSha256Sign(needSignData, appKey); } }