java微信关键字回复获取不到消息内容
发布网友
发布时间:2022-04-26 13:58
我来回答
共1个回答
热心网友
时间:2022-05-02 01:24
这里说的关键字回复只是对消息回复功能的应用化,这里我在【文本类型消息】下实现,其大致思路是:首先获取到消息文本的内容content,然后更具获取content去匹配自己需要设定的关键字,然后根据匹配到的不同结果给出不同的消息回复,简单代码如下:
String openid=map.get("FromUserName"); //用户openidString mpid=map.get("ToUserName"); //公众号原始ID //普通文本消息TextMessage txtmsg=new TextMessage();txtmsg.setToUserName(openid);txtmsg.setFromUserName(mpid);txtmsg.setCreateTime(new Date().getTime());txtmsg.setMsgType(MessageUtil.RESP_MESSAGE_TYPE_TEXT); if (map.get("MsgType").equals(MessageUtil.REQ_MESSAGE_TYPE_TEXT)) { // 文本消息 String content=map.get("Content"); if("1".equals(content)){ txtmsg.setContent("你好,你发送的内容是1!"); }else if("2".equals(content)){ txtmsg.setContent("你好,你发送的内容是2!"); }else if("3".equals(content)){ txtmsg.setContent("你好,你发送的内容是3!"); }else if("4".equals(content)){ txtmsg.setContent("<a href=\"http://www.cuiyong.com\">崔用志博客</a>"); }else{ txtmsg.setContent("你好,欢迎来到崔用志博客!"); } return MessageUtil.textMessageToXml(txtmsg);}
基本关键字回复的逻辑就是这样,你可以根据自己的需要设置自己的关键字以及实现流程,最终运行结果如下: