温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
  • 忘记密码?
登录注册×
获取短信验证码
其他方式登录
点击 登录注册 即表示同意 《亿速云用户服务条款》
  • 服务器
  • 数据库
  • 开发技术
  • 网络安全
  • 互联网科技
登 录 注册有礼
最新更新 网站标签 地图导航
产品
  • 首页 > 
  • 教程 > 
  • 开发技术 > 
  • web开发 > 
  • nodejs微信公众号开发之如何实现自动回复各种消息

nodejs微信公众号开发之如何实现自动回复各种消息

发布时间:2021-08-12 10:19:11 来源:亿速云 阅读:162 作者:小新 栏目: web开发

这篇文章主要介绍了nodejs微信公众号开发之如何实现自动回复各种消息,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

1. 被动回复用户消息

当用户发送消息给公众号时(或某些特定的用户操作引发的事件推送时),会产生一个POST请求,开发者可以在响应包(Get)中返回特定XML结构,来对该消息进行响应(现支持回复文本、图片、图文、语音、视频、音乐)。发送被动响应消息是对微信 服务器发过来消息的一次回复。

开发过程中如果遇到该公众号暂时无法提供服务,请稍后再试的情况,一般是由两个原因造成的:

  1. 开发者在5秒内未回复任何内容

  2. 开发者回复的数据异常,非xml格式,比如JSON数据

具体的消息规则可参看微信平台开发者文档:被动回复用户消息

2. 回复消息的实现

我们之前的关注自动回复是在weixin.js里面实现的,其他的消息回复也写在这个文件里面:

if(message.MsgType === 'event'){
  if(message.Event === 'subscribe'){
    if(message.EventKey) {
      console.log('扫描二维码关注:'+ message.EventKey +' '+ message.ticket);
    }
    this.body = '终于等到你,还好我没放弃';
  }else if(message.Event === 'unsubscribe'){
    this.body = '';
    console.log(message.FromUserName + ' 悄悄地走了...');
  }else if(message.Event === 'LOCATION'){
    this.body = '您上报的地理位置是:'+ message.Latitude + ',' + message.Longitude;
  }else if(message.Event === 'CLICK'){
    this.body = '您点击了菜单:'+ message.EventKey;
  }else if(message.Event === 'SCAN'){
    this.body = '关注后扫描二维码:'+ message.Ticket;
  }
}
else if(message.MsgType === 'text'){
  var content = message.Content;
  var reply = '你说的话:“' + content + '”,我听不懂呀';
  if(content === '1'){
    reply = '金刚:骷髅岛';
  }
  else if(content === '2'){
    reply = {
      type:'image',
      mediaId:'http://tu.23juqing.com/d/file/html/gndy/dyzz/2017-04-09/da9c7a64ab7df196d08b4b327ef248f2.jpg'
    }
  }
  else if(content === '3'){
    reply = [{
      title:'金刚.骷髅岛',
      description:'南太平洋上的神秘岛屿——骷髅岛。史上最大金刚与邪恶骷髅蜥蜴的较量。',
      picUrl:'http://tu.23juqing.com/d/file/html/gndy/dyzz/2017-04-09/da9c7a64ab7df196d08b4b327ef248f2.jpg',
      url:'http://www.piaohua.com/html/dongzuo/2017/0409/31921.html' //可下载观看喔
    }];
  }

  // ... 其他回复类型

  this.body = reply;
}

测试效果如图:

nodejs微信公众号开发之如何实现自动回复各种消息

3.说明:

发现输入数字2并没有回复相应的图片,是不是很奇怪?我们查看一下文档:

nodejs微信公众号开发之如何实现自动回复各种消息

文档中说明了MediaId属性是通过素材管理接口上传多媒体文件,得到的id,而不是我们直接给的网上图片的url链接。在图文消息中,是可以直接使用url链接的。所以我们下一步的工作就是实现素材管理的接口。

感谢你能够认真阅读完这篇文章,希望小编分享的“nodejs微信公众号开发之如何实现自动回复各种消息”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节
推荐阅读:
  1. 详解NodeJs开发微信公众号
  2. NodeJS怎么实现微信公众号关注后自动回复功能

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

nodejs
  • 上一篇新闻:
    openstack连接ceph不成功怎么办
  • 下一篇新闻:
    怎么用HTML5 canvas画五角星

猜你喜欢

  • shell怎么清理指定目录中的旧文件
  • Java怎么反编译字节码文件
  • c#中tostring的作用是什么
  • centos7怎么修改yum源为本地源
  • mysql新建数据库的方法是什么
  • vb中tostring方法的作用是什么
  • 怎么用shell脚本删除七天前的文件
  • c#中hashtable的优缺点是什么
  • sql倒序排列怎么实现
  • 怎么查看服务器上的数据库
最新资讯
  • 如何在Svelte应用中实现自定义Hook功能
  • Svelte中如何有效管理组件的生命周期和资源释放
  • 如何在Svelte项目中使用PostCSS提高CSS编写效率
  • 如何在Svelte应用中实现与旧系统或第三方系统的集成
  • 如何在SvelteKit项目中优化静态资产的加载和缓存
  • 如何在Svelte项目中实现内容安全策略
  • 在Svelte应用中应用函数式编程原则的策略和好处是什么
  • 如何在Svelte中实现无障碍访问
  • 如何在Svelte中集成和使用WebGL进行高性能图形渲染
  • Svelte项目中处理多环境配置的最併实践是什么
相关推荐
  • 详解nodejs微信公众号开发——3.封装消息响应模块
  • 详解nodejs微信公众号开发——2.自动回复
  • nodejs中怎么实现微信公众号开发
  • 微信开发之自动回复消息和客服消息、文本带链接跳转的示例分析
  • PHP微信开发之微信消息自动回复遇到的问题有哪些
  • .NET开发微信公众号之公众号消息怎么处理
  • PHP微信开发之如何实现文本自动回复功能
  • php如何实现微信公众号开发之文本消息自动回复
  • php如何实现微信公众号开发之语音消息识别
  • EasyWechat如何开发微信公众号自动回复

相关标签

json格式 jsp jscript jsonp bjs tracking.js casperjs jsp标签 react.js clipboard.js main.js iscroll.js next.js webpack.config.js vendor.js flexible.js fullpage.js json.loads json decode jsencrypt
AI

深圳SEO优化公司辽阳网站设计模板哪家好黔南seo网站优化推荐吉林高端网站设计多少钱吕梁网站定制价格哈尔滨模板网站建设江门SEO按效果付费哪家好珠海推广网站报价黔东南关键词排名报价丽水网站推广系统台州网站定制推荐合肥百搜标王推荐曲靖关键词排名推荐延边设计公司网站哪家好东莞关键词按天扣费报价福永网站优化推广报价贵阳百度竞价多少钱桂林网站改版报价福田网站建设设计价格重庆百搜标王价格鹤岗百度seo哪家好吉安百度关键词包年推广哪家好杭州高端网站设计公司沧州网站制作公司吉安外贸网站设计公司咸阳营销型网站建设价格沙井建设网站推荐揭阳关键词按天计费多少钱固原网站优化软件哪家好运城网络营销价格湘潭网站优化按天扣费推荐歼20紧急升空逼退外机英媒称团队夜以继日筹划王妃复出草木蔓发 春山在望成都发生巨响 当地回应60岁老人炒菠菜未焯水致肾病恶化男子涉嫌走私被判11年却一天牢没坐劳斯莱斯右转逼停直行车网传落水者说“没让你救”系谣言广东通报13岁男孩性侵女童不予立案贵州小伙回应在美国卖三蹦子火了淀粉肠小王子日销售额涨超10倍有个姐真把千机伞做出来了近3万元金手镯仅含足金十克呼北高速交通事故已致14人死亡杨洋拄拐现身医院国产伟哥去年销售近13亿男子给前妻转账 现任妻子起诉要回新基金只募集到26元还是员工自购男孩疑遭霸凌 家长讨说法被踢出群充个话费竟沦为间接洗钱工具新的一天从800个哈欠开始单亲妈妈陷入热恋 14岁儿子报警#春分立蛋大挑战#中国投资客涌入日本东京买房两大学生合买彩票中奖一人不认账新加坡主帅:唯一目标击败中国队月嫂回应掌掴婴儿是在赶虫子19岁小伙救下5人后溺亡 多方发声清明节放假3天调休1天张家界的山上“长”满了韩国人?开封王婆为何火了主播靠辱骂母亲走红被批捕封号代拍被何赛飞拿着魔杖追着打阿根廷将发行1万与2万面值的纸币库克现身上海为江西彩礼“减负”的“试婚人”因自嘲式简历走红的教授更新简介殡仪馆花卉高于市场价3倍还重复用网友称在豆瓣酱里吃出老鼠头315晚会后胖东来又人满为患了网友建议重庆地铁不准乘客携带菜筐特朗普谈“凯特王妃P图照”罗斯否认插足凯特王妃婚姻青海通报栏杆断裂小学生跌落住进ICU恒大被罚41.75亿到底怎么缴湖南一县政协主席疑涉刑案被控制茶百道就改标签日期致歉王树国3次鞠躬告别西交大师生张立群任西安交通大学校长杨倩无缘巴黎奥运

深圳SEO优化公司 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化