From cc9c52cd5e0c0340fd4d6a880dd3bb74a146662a Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Tue, 4 Dec 2018 10:27:35 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=BE=AE=E4=BF=A1=E5=85=AC=E4=BC=97=E5=8F=B7?= =?UTF-8?q?=E6=B6=88=E6=81=AF=E6=8E=A5=E6=94=B6=E5=8F=8A=E5=A4=84=E7=90=86?= =?UTF-8?q?][=E4=BF=AE=E6=94=B9]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WechatCalllbackController.java | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/WechatCalllbackController.java b/mallinkAdmin/src/main/java/com/iformall/controller/WechatCalllbackController.java index d9852e9d1..5d39d2009 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/WechatCalllbackController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/WechatCalllbackController.java @@ -10,6 +10,7 @@ import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.http.MediaType; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; @@ -74,7 +75,7 @@ public class WechatCalllbackController extends BaseController { return "success"; } - @RequestMapping("/{appId}/callback") + @RequestMapping(value = "/{appId}/callback", method = RequestMethod.POST, produces = MediaType.TEXT_XML_VALUE) public Object callback(@PathVariable("appId") String appId, HttpServletRequest request) throws IOException { logger.info("[" +getIpAddr() + "]接收微信请求 /{appId}/callback"); InputStream inStream = request.getInputStream(); @@ -110,7 +111,7 @@ public class WechatCalllbackController extends BaseController { // aes加密的消息 WxMpXmlMessage inMessage = WxOpenXmlMessage.fromEncryptedMpXml(resultxml, wxOpenService.getWxOpenConfigStorage(), timestamp, nonce, msgSignature); - this.logger.debug("\n消息解密后内容为:\n{} ", inMessage.toString()); + logger.debug("\n消息解密后内容为:\n{} ", inMessage.toString()); // 全网发布测试用例 if (StringUtils.equalsAnyIgnoreCase(appId, "wxd101a85aa106f53e", "wx570bc396a51b8ff8")) { try { @@ -136,11 +137,22 @@ public class WechatCalllbackController extends BaseController { logger.error("callback", e); } } else { - WxMpXmlOutMessage outMessage = wxOpenService.getWxOpenMessageRouter().route(inMessage, appId); - if (outMessage != null) { - out = WxOpenXmlMessage.wxMpOutXmlMessageToEncryptedXml(outMessage, wxOpenService.getWxOpenConfigStorage()); + /**判断消息类型,调用对应的方法*/ + switch (inMessage.getMsgType()){ + /* + case "event": + case "text": + WxMpXmlOutMessage outMessage = wxOpenService.getWxOpenMessageRouter().route(inMessage, appId); + if (outMessage != null) { + out = WxOpenXmlMessage.wxMpOutXmlMessageToEncryptedXml(outMessage, wxOpenService.getWxOpenConfigStorage()); + } + */ + default: + return "success"; } } + + logger.info(out); return out; } }