返回
微信公众号开发(二)消息处理
闲谈
2024-02-13 11:14:50
一、前言
在上一篇文章中,我们已经完成了微信公众号的接入认证,成为一名合格的开发者。本文将继续介绍微信公众号开发的第二部分:消息处理。消息处理包括接收消息和回复消息两大部分,掌握了这些内容,开发者就可以实现公众号与用户之间的基本交互了。
二、消息接收
微信公众号的消息接收通过POST请求实现,与微信认证时GET请求的URL是一样的,开发者在填写URL时需注意。接收到的文本消息格式如下:
<xml>
<ToUserName><![CDATA[gh_e22344f3c285]]></ToUserName>
<FromUserName><![CDATA[oR5Gjjl_eiZoQR_73VCjo_QKt43Y]]></FromUserName>
<CreateTime>1508962205</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[你好]]></Content>
<MsgId>6500687764054666414</MsgId>
</xml>
其中,各个参数的含义如下:
- ToUserName:开发者微信号
- FromUserName:发送方帐号(一个OpenID)
- CreateTime:消息创建时间 (整型)
- MsgType:消息类型,文本为text,图片为image,语音为voice等等
- Content:文本消息内容
- MsgId:消息id,64位整型
三、回复消息
当收到用户的消息后,公众号开发者需要做出相应的回复。回复消息的格式与接收消息类似,也是以XML格式返回。文本消息的回复格式如下:
<xml>
<ToUserName><![CDATA[oR5Gjjl_eiZoQR_73VCjo_QKt43Y]]></ToUserName>
<FromUserName><![CDATA[gh_e22344f3c285]]></FromUserName>
<CreateTime>1508962205</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[你好,我是机器人]]></Content>
</xml>
其中,各个参数的含义如下:
- ToUserName:接收方帐号(一个OpenID)
- FromUserName:开发者微信号
- CreateTime:消息创建时间 (整型)
- MsgType:消息类型,文本为text,图片为image,语音为voice等等
- Content:回复的消息内容
注意:回复消息需要在收到消息后8秒内返回,否则微信服务器会认为开发者没有处理此条消息,并且服务器不会对此做出回应。
四、结语
以上就是微信公众号消息处理的基本内容,希望对开发者有所帮助。在下一篇文章中,我们将介绍微信公众号的菜单管理,帮助开发者实现公众号的菜单功能。