From dbe511a5de8b77cb74f934620b7592ca8648d18a Mon Sep 17 00:00:00 2001 From: "udf_admin@163.com" Date: Tue, 30 Jan 2018 20:57:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E5=BE=AE=E4=BF=A1MP=E7=9A=84?= =?UTF-8?q?=E9=9B=86=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../weixin/mp/service/WeixinMpCallbackService.java | 12 +++--------- .../weixin/mp/web/IWeixinMpCallbackController.java | 4 +++- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/udf-starter-weixin-mp/src/main/java/org/itkk/udf/weixin/mp/service/WeixinMpCallbackService.java b/udf-starter-weixin-mp/src/main/java/org/itkk/udf/weixin/mp/service/WeixinMpCallbackService.java index 7f16834..68d9ecc 100644 --- a/udf-starter-weixin-mp/src/main/java/org/itkk/udf/weixin/mp/service/WeixinMpCallbackService.java +++ b/udf-starter-weixin-mp/src/main/java/org/itkk/udf/weixin/mp/service/WeixinMpCallbackService.java @@ -4,11 +4,7 @@ import com.qq.weixin.mp.aes.WXBizMsgCrypt; import lombok.extern.slf4j.Slf4j; import org.itkk.udf.amqp.rabbitmq.Rabbitmq; import org.itkk.udf.amqp.rabbitmq.RabbitmqMessage; -import org.itkk.udf.weixin.mp.api.WeixinMpConsont; -import org.itkk.udf.weixin.mp.api.WeixinMpException; -import org.itkk.udf.weixin.mp.api.ShaOne; -import org.itkk.udf.weixin.mp.api.WeixinMpApiConfig; -import org.itkk.udf.weixin.mp.api.WeixinMpApiProperties; +import org.itkk.udf.weixin.mp.api.*; import org.itkk.udf.weixin.mp.api.meta.WeixinMpApiAuthMeta; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Async; @@ -72,11 +68,12 @@ public class WeixinMpCallbackService { * @param signature signature * @param timestamp timestamp * @param nonce nonce + * @param msgSignature msgSignature * @param inputMessage inputMessage * @throws Exception Exception */ @Async - public void callback(String businessCode, String signature, String timestamp, String nonce, String inputMessage) throws Exception { //NOSONAR + public void callback(String businessCode, String signature, String timestamp, String nonce, String msgSignature, String inputMessage) throws Exception { //NOSONAR //常量 final String eventMessageType = "event"; //获得身份认证元数据 @@ -93,9 +90,6 @@ public class WeixinMpCallbackService { if (weixinMpApiAuthMeta.getSafeModel()) { //实例化加密解密工具类 WXBizMsgCrypt pc = new WXBizMsgCrypt(weixinMpApiAuthMeta.getToken(), weixinMpApiAuthMeta.getEncodingAesKey(), weixinMpApiAuthMeta.getAppId()); - //解析密文输入参数 - Element root = WeixinMpConsont.formatInputMessage(inputXmlMessage); - String msgSignature = WeixinMpConsont.getXmlNodeValue(root, "MsgSignature"); inputXmlMessage = pc.decryptMsg(msgSignature, timestamp, nonce, inputXmlMessage); } //解析明文输入参数 diff --git a/udf-starter-weixin-mp/src/main/java/org/itkk/udf/weixin/mp/web/IWeixinMpCallbackController.java b/udf-starter-weixin-mp/src/main/java/org/itkk/udf/weixin/mp/web/IWeixinMpCallbackController.java index c72897b..d1f150b 100644 --- a/udf-starter-weixin-mp/src/main/java/org/itkk/udf/weixin/mp/web/IWeixinMpCallbackController.java +++ b/udf-starter-weixin-mp/src/main/java/org/itkk/udf/weixin/mp/web/IWeixinMpCallbackController.java @@ -3,6 +3,7 @@ package org.itkk.udf.weixin.mp.web; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; import springfox.documentation.annotations.ApiIgnore; /** @@ -32,9 +33,10 @@ public interface IWeixinMpCallbackController { * @param timestamp 时间戳 * @param nonce 随机数 * @param echostr 随机数 + * @param msgSignature 随机数 * @throws Exception Exception */ @PostMapping - void callback(@PathVariable String businessCode, String signature, String timestamp, String nonce, String echostr) throws Exception; //NOSONAR + void callback(@PathVariable String businessCode, String signature, String timestamp, String nonce, String echostr, @RequestParam("msg_signature") String msgSignature) throws Exception; //NOSONAR }