Skip to content

Commit b5f0ee7

Browse files
committed
Merge pull request #218 from ukid/develop
票据验证方法
2 parents 9363a67 + 123e5ef commit b5f0ee7

File tree

3 files changed

+15
-6
lines changed

3 files changed

+15
-6
lines changed

weixin-java-common/src/main/java/me/chanjar/weixin/common/util/crypto/WxCryptUtil.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -248,7 +248,6 @@ public static String createSign(Map<String, String> packageParams, String signKe
248248
}
249249
}
250250
toSign.append("key=" + signKey);
251-
System.out.println(toSign.toString());
252251
String sign = DigestUtils.md5Hex(toSign.toString())
253252
.toUpperCase();
254253
return sign;

weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpService.java

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
import java.io.File;
1212
import java.io.IOException;
1313
import java.io.InputStream;
14-
import java.math.BigDecimal;
1514
import java.text.SimpleDateFormat;
1615
import java.util.Date;
1716
import java.util.List;
@@ -738,4 +737,15 @@ public interface WxMpService {
738737
* @return
739738
*/
740739
WxMpPayCallback getJSSDKCallbackData(String xmlData);
740+
741+
/**
742+
* <pre>
743+
* 计算Map键值对是否和签名相符,
744+
* 按照字段名的 ASCII 码从小到大排序(字典序)后,使用 URL 键值对的 格式(即 key1=value1&key2=value2...)拼接成字符串
745+
* </pre>
746+
* @param kvm
747+
* @param signature
748+
* @return
749+
*/
750+
public boolean checkJSSDKCallbackDataSignature(Map<String, String> kvm, String signature);
741751
}

weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api/WxMpServiceImpl.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@
55
import java.io.InputStream;
66
import java.io.StringReader;
77
import java.security.NoSuchAlgorithmException;
8-
import java.util.ArrayList;
9-
import java.util.Collections;
108
import java.util.Date;
119
import java.util.HashMap;
1210
import java.util.List;
@@ -76,7 +74,6 @@
7674
import me.chanjar.weixin.mp.util.http.QrCodeRequestExecutor;
7775
import me.chanjar.weixin.mp.util.json.WxMpGsonBuilder;
7876

79-
import org.apache.commons.codec.digest.DigestUtils;
8077
import org.apache.http.Consts;
8178
import org.apache.http.HttpHost;
8279
import org.apache.http.auth.AuthScope;
@@ -937,5 +934,8 @@ public WxMpPayCallback getJSSDKCallbackData(String xmlData) {
937934
return new WxMpPayCallback();
938935
}
939936

940-
937+
@Override
938+
public boolean checkJSSDKCallbackDataSignature(Map<String, String> kvm, String signature) {
939+
return signature.equals(WxCryptUtil.createSign(kvm, wxMpConfigStorage.getPartnerKey()));
940+
}
941941
}

0 commit comments

Comments
 (0)