让你的公众号多一个智能管家

这里需要注意 http 的端口号固定使用80,不可填写其他。这里坑了我很久,因为我的服务器上还有我自己的博客,80端口被博客占用了,为了把80端口让出来,我重新搭了我的博客,修改了端口,导致现在访问我的博客后边必须加上修改后的端口。这里如果有同学有更高的方法,还请劳烦告知一下!

好了,现在我们的验证流程完成,运行我们的 Web 服务器。然后到公众号后台配置处点击保存,如果提示验证通过,那么恭喜你完成了验证。

如果提示验证失败,我们自己根据报错提示来查看是哪里的问题。

实现“你问我答”和“图”上往来

我们验证成功了,下面就要开始处理粉丝在公众号发过来的消息了。我们先来实现一个简单的“你问我答”, 粉丝给公众号一条文本消息,公众号立马回复一条相同文本消息给粉丝;还有图上往来,接受粉丝发送的图片消息,并立马回复相同的图片给粉丝。

我们通过公众号文档知道,普通用户向公众号发消息是用的 POST 方法,消息分为文本消息、图片消息、语音消息、视频消息等很多种。这里我们只对文本消息和图片消息进行处理和回复(后续你也可以针对其他消息进行处理和回复)。

消息的格式为XML数据包,下面看一下文本消息的实例:


  1. <xml> 
  2.   <ToUserName><![CDATA[toUser]]></ToUserName> 
  3.   <FromUserName><![CDATA[fromUser]]></FromUserName> 
  4.   <CreateTime>1348831860</CreateTime> 
  5.   <MsgType><![CDATA[text]]></MsgType> 
  6.   <Content><![CDATA[this is a test]]></Content> 
  7.   <MsgId>1234567890123456</MsgId> 
  8. </xml> 
  • ToUserName 开发者微信号
  • FromUserName 发送方帐号(一个OpenID)
  • CreateTime 消息创建时间 (整型)
  • MsgType 消息类型,文本为text,图片为image
  • Content 文本消息内容
  • MsgId 消息id,64位整型

被动回复文本消息,就是我们回复给用户的文本消息类型为:


  1. <xml> 
  2.  <ToUserName><![CDATA[粉丝号]]></ToUserName> 
  3.  <FromUserName><![CDATA[公众号]]></FromUserName> 
  4.  <CreateTime>1460541339</CreateTime> 
  5.  <MsgType><![CDATA[text]]></MsgType> 
  6.  <Content><![CDATA[test]]></Content> 
  7. </xml> 

Content 回复的消息内容

回复的图片消息类型:


  1. <xml> 
  2.   <ToUserName><![CDATA[toUser]]></ToUserName> 
  3.   <FromUserName><![CDATA[fromUser]]></FromUserName> 
  4.   <CreateTime>12345678</CreateTime> 
  5.   <MsgType><![CDATA[image]]></MsgType> 
  6.   <Image> 
  7.     <MediaId><![CDATA[media_id]]></MediaId> 
  8.   </Image> 
  9. </xml> 

MediaId 通过素材管理中的接口上传多媒体文件,得到的id。

接收和回复消息的格式我们知道了,下面我们来看一下整个流程。

【声明】:芜湖站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

相关文章