From de4043b90acc62dcaad2bf0a56348242667d2b2c Mon Sep 17 00:00:00 2001 From: jinyu Date: Thu, 30 Jul 2015 14:41:05 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E6=B3=A8=E9=87=8A=E8=AF=B4?= =?UTF-8?q?=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../weixin4j/socket/WeixinRequestHandler.java | 2 +- .../startup/WeixinServerBootstrap.java | 47 ++++++++++++------- 2 files changed, 30 insertions(+), 19 deletions(-) diff --git a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/socket/WeixinRequestHandler.java b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/socket/WeixinRequestHandler.java index b2d37858..6ea209b5 100644 --- a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/socket/WeixinRequestHandler.java +++ b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/socket/WeixinRequestHandler.java @@ -48,7 +48,7 @@ public class WeixinRequestHandler extends @Override public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) { ctx.close(); - logger.error("catch the exception:{}", cause); + logger.error("catch the exception:", cause); } @Override diff --git a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java index 156a07b6..897f3a70 100644 --- a/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java +++ b/weixin4j-server/src/main/java/com/foxinmy/weixin4j/startup/WeixinServerBootstrap.java @@ -81,7 +81,7 @@ public final class WeixinServerBootstrap { * 明文模式 * * @param weixinid - * 微信号(原始ID)或者appid + * 微信号(原始ID/appid/cropid) * @param token * 开发者token * @@ -104,36 +104,47 @@ public final class WeixinServerBootstrap { this(new AesToken(appid, token, aesKey)); } - public WeixinServerBootstrap(AesToken aesToken) { - this(aesToken, new DefaultMessageMatcher()); - } - - public WeixinServerBootstrap(AesToken aesToken, - WeixinMessageMatcher messageMatcher) { - this.aesTokenMap = new HashMap(); - this.aesTokenMap.put(aesToken.getWeixinId(), aesToken); - this.aesTokenMap.put(null, aesToken); - this.messageHandlerList = new LinkedList(); - this.messageInterceptorList = new LinkedList(); - this.messageDispatcher = new WeixinMessageDispatcher(messageMatcher); + /** + * 多个公众号的支持 + *

+ * 请注意:需在服务接收事件的URL中附加一个名为wexin_id的参数,其值请填写公众号的appid/ + * cropid + *

+ * + * @param aesTokens + * 多个公众号 + * @return + */ + public WeixinServerBootstrap(AesToken... aesToken) { + this(new DefaultMessageMatcher(), aesToken); } /** * 多个公众号的支持 *

- * 请注意:需在服务接收事件的URL中附加一个名为wexin_id的参数,其值视加密模式而定, - * 如为明文模式weixin_id则填写公众号的微信号(即原始ID),如为AES加密模式weixin_id则填写公众号的应用ID(即appid) - * + * 请注意:需在服务接收事件的URL中附加一个名为wexin_id的参数,其值请填写公众号的appid/ + * cropid *

* + * @param messageMatcher + * 消息匹配器 * @param aesTokens + * 多个公众号 * @return */ - public WeixinServerBootstrap multAesToken(AesToken... aesTokens) { + public WeixinServerBootstrap(WeixinMessageMatcher messageMatcher, + AesToken... aesTokens) { + this.aesTokenMap = new HashMap(); for (AesToken aesToken : aesTokens) { this.aesTokenMap.put(aesToken.getWeixinId(), aesToken); } - return this; + // default.. + if (aesTokens.length == 1) { + this.aesTokenMap.put(null, aesTokens[0]); + } + this.messageHandlerList = new LinkedList(); + this.messageInterceptorList = new LinkedList(); + this.messageDispatcher = new WeixinMessageDispatcher(messageMatcher); } /**