W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
WxMessageMatcher(消息匹配器)接口用于一些簡(jiǎn)單的匹配,可以自定義匹配邏輯,如格式驗(yàn)證。匹配成功則繼續(xù)往下執(zhí)行,否則不允許通過(guò)。
需求:我想當(dāng)用戶發(fā)送文本消息:“我是誰(shuí)”時(shí),后臺(tái)獲取該用戶的微信用戶信息(昵稱)并返回。
用于匹配符合”我是誰(shuí)“的消息。
public class WhoAmIMatcher implements WxMessageMatcher{
@Override
public boolean match(WxXmlMessage message) {
if(StringUtils.isNotEmpty(message.getContent())){
if(message.getContent().equals("我是誰(shuí)")){
return true;
}
}
return false;
}
}
用于處理當(dāng)匹配到“我是誰(shuí)”的消息。
router.rule().msgType(WxConsts.XML_MSG_TEXT).matcher(new WhoAmIMatcher()).handler(new WhoAmIHandler()).end()
.rule().event(WxConsts.EVT_CLICK).eventKey(MenuKey.HELP).handler(HelpDocHandler.getInstance()).next()
.rule().eventKey(MenuKey.HOT_SONG).handler(RankHandler.getInstance()).next()
.rule().eventKey(MenuKey.TOP_500).handler(RankHandler.getInstance()).next()
.rule().eventKey(MenuKey.NET_HOT_SONG).handler(RankHandler.getInstance()).next()
.rule().eventKey(MenuKey.HUAYU_SONG).handler(RankHandler.getInstance()).next()
.rule().eventKey(MenuKey.XINAO_SONG).handler(RankHandler.getInstance()).end();
如圖所示,輸入”我是誰(shuí)“的時(shí)候,返回了我微信的昵稱。
至此,我們已經(jīng)嘗試使用了路由器Router,規(guī)則Rule,匹配器Matcher,處理器Handler。
還有使用了IServer統(tǒng)一接口調(diào)用去獲取用戶信息。
IServer 接口是集成所有wx-tools已經(jīng)實(shí)現(xiàn)的微信接口,統(tǒng)一調(diào)用入口。它的實(shí)現(xiàn)是WxService.java。想看實(shí)現(xiàn)源碼的可以戳:這里
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: