WxCpMessageRouter SpringContextHolder

me.chanjar.weixin.cp.api.WxCpMessageRouter
微信消息路由器,通过代码化的配置,把来自微信的消息交给handler处理
说明:
1. 配置路由规则时要按照从细到粗的原则,否则可能消息可能会被提前处理
2. 默认情况下消息只会被处理一次,除非使用 WxCpMessageRouterRule.next()
3. 规则的结束必须用WxCpMessageRouterRule.end()或者WxCpMessageRouterRule.next(),否则不会生效

使用方法:
WxCpMessageRouter router = new WxCpMessageRouter();
router
.rule()
.msgType("MSG_TYPE").event("EVENT").eventKey("EVENT_KEY").content("CONTENT")
.interceptor(interceptor, ...).handler(handler, ...)
.end()
.rule()
// 另外一个匹配规则
.end()
;
// 将WxXmlMessage交给消息路由器
router.route(message);

 

com.fan.framework.context.SpringContextHolder
以静态变量保存Spring ApplicationContext, 可在任何代码任何地方任何时候取出ApplicaitonContext.

 

转载于:https://www.cnblogs.com/xsl1995/p/7654819.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实现自动回复好友微信消息需要以下几个步骤: 1. 注册微信开放平台账号并创建应用,获取AppID和AppSecret。 2. 使用Java的第三方库,如weixin-java-tools或weixin-java-cp,连接微信开放平台API,获取access_token和微信消息。 3. 根据微信收到的消息内容,编写自动回复的Java代码,并将回复消息发送给好友。 以下是一个简单的示例代码,演示如何使用weixin-java-tools库实现自动回复好友微信消息的功能: ```java import me.chanjar.weixin.common.api.WxConsts; import me.chanjar.weixin.common.api.WxMessageRouter; import me.chanjar.weixin.cp.api.WxCpConfigStorage; import me.chanjar.weixin.cp.api.WxCpMessageRouter; import me.chanjar.weixin.cp.api.WxCpService; import me.chanjar.weixin.cp.api.impl.WxCpServiceImpl; import me.chanjar.weixin.cp.bean.message.WxCpMessage; import me.chanjar.weixin.cp.bean.message.WxCpMessage.TextBuilder; import me.chanjar.weixin.cp.config.impl.WxCpDefaultConfigImpl; import me.chanjar.weixin.cp.util.crypto.WxCpCryptUtil; public class WeChatAutoReply { public static void main(String[] args) { // 配置微信开放平台信息 WxCpDefaultConfigImpl config = new WxCpDefaultConfigImpl(); config.setCorpId("your_corp_id"); config.setAgentId("your_agent_id"); config.setCorpSecret("your_corp_secret"); // 创建微信开放平台服务对象 WxCpService wxCpService = new WxCpServiceImpl(); wxCpService.setWxCpConfigStorage(config); // 创建微信消息路由器 WxMessageRouter<WxCpMessage, TextBuilder> router = new WxCpMessageRouter(wxCpService); // 处理文本消息 router.rule().async(false).msgType(WxConsts.XmlMsgType.TEXT).handler((wxMessage, context, wxCpService, sessionManager) -> { WxCpMessage message = WxCpMessage.TEXT().agentId(wxMessage.getAgentId()).content("你好") .toUser(wxMessage.getFromUserName()).build(); wxCpService.messageSend(message); return null; }).end(); // 启动微信开放平台服务 wxCpService.getAccessToken(); // 循环接收微信消息并自动回复 while (true) { // 从微信开放平台接收消息 WxCpMessage message = wxCpService.messageReceive(); if (message != null) { router.route(message); } } } } ``` 需要注意的是,以上代码中的your_corp_id、your_agent_id和your_corp_secret需要替换为你自己的微信开放平台信息。此外,你也可以根据需要修改自动回复的内容和回复规则。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值