微信开发之接收普通消息
来源:互联网 发布:淘宝联盟登不上去 编辑:程序博客网 时间:2024/05/07 03:04
微信开发之接收普通消息
当普通微信用户向公众账号发消息时,微信服务器将POST消息的XML数据包到开发者填写的URL上。
请注意:
1、关于重试的消息排重,推荐使用msgid排重。2、微信服务器在五秒内收不到响应会断掉连接,并且重新发起请求,总共重试三次。假如服务器无法保证在五秒内处理并回复,可以直接回复空串,微信服务器不会对此作任何处理,并且不会发起重试。详情请见“发送消息-被动回复消息”。3、为了保证更高的安全保障,开发者可以在公众平台官网的开发者中心处设置消息加密。开启加密后,用户发来的消息会被加密,公众号被动回复用户的消息也需要加密(但开发者通过客服接口等API调用形式向用户发送消息,则不受影响)。关于消息加解密的详细说明,请见“消息加解密说明”。
各消息类型的推送XML数据包结构如下:
目录
- 1文本消息
- 2图片消息
- 3语音消息
- 4视频消息
- 5小视频消息
- 6地理位置消息
- 7链接消息
文本消息
<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>1348831860</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[this is a test]]></Content> <MsgId>1234567890123456</MsgId> </xml>
使用网页调试工具调试该接口
图片消息
<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName> <CreateTime>1348831860</CreateTime> <MsgType><![CDATA[image]]></MsgType> <PicUrl><![CDATA[this is a url]]></PicUrl> <MediaId><![CDATA[media_id]]></MediaId> <MsgId>1234567890123456</MsgId> </xml>
使用网页调试工具调试该接口
语音消息
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[fromUser]]></FromUserName><CreateTime>1357290913</CreateTime><MsgType><![CDATA[voice]]></MsgType><MediaId><![CDATA[media_id]]></MediaId><Format><![CDATA[Format]]></Format><MsgId>1234567890123456</MsgId></xml>
使用网页调试工具调试该接口
请注意,开通语音识别后,用户每次发送语音给公众号时,微信会在推送的语音消息XML数据包中,增加一个Recongnition字段(注:由于客户端缓存,开发者开启或者关闭语音识别功能,对新关注者立刻生效,对已关注用户需要24小时生效。开发者可以重新关注此帐号进行测试)。开启语音识别后的语音XML数据包如下:
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[fromUser]]></FromUserName><CreateTime>1357290913</CreateTime><MsgType><![CDATA[voice]]></MsgType><MediaId><![CDATA[media_id]]></MediaId><Format><![CDATA[Format]]></Format><Recognition><![CDATA[腾讯微信团队]]></Recognition><MsgId>1234567890123456</MsgId></xml>
多出的字段中,Format为语音格式,一般为amr,Recognition为语音识别结果,使用UTF8编码。
视频消息
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[fromUser]]></FromUserName><CreateTime>1357290913</CreateTime><MsgType><![CDATA[video]]></MsgType><MediaId><![CDATA[media_id]]></MediaId><ThumbMediaId><![CDATA[thumb_media_id]]></ThumbMediaId><MsgId>1234567890123456</MsgId></xml>
使用网页调试工具调试该接口
小视频消息
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[fromUser]]></FromUserName><CreateTime>1357290913</CreateTime><MsgType><![CDATA[shortvideo]]></MsgType><MediaId><![CDATA[media_id]]></MediaId><ThumbMediaId><![CDATA[thumb_media_id]]></ThumbMediaId><MsgId>1234567890123456</MsgId></xml>
使用网页调试工具调试该接口
地理位置消息
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[fromUser]]></FromUserName><CreateTime>1351776360</CreateTime><MsgType><![CDATA[location]]></MsgType><Location_X>23.134521</Location_X><Location_Y>113.358803</Location_Y><Scale>20</Scale><Label><![CDATA[位置信息]]></Label><MsgId>1234567890123456</MsgId></xml>
使用网页调试工具调试该接口
链接消息
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[fromUser]]></FromUserName><CreateTime>1351776360</CreateTime><MsgType><![CDATA[link]]></MsgType><Title><![CDATA[公众平台官网链接]]></Title><Description><![CDATA[公众平台官网链接]]></Description><Url><![CDATA[url]]></Url><MsgId>1234567890123456</MsgId></xml>
使用网页调试工具调试该接口
1 0
- 微信开发之接收普通消息
- 微信公众号开发之接收普通消息
- 微信公众号开发之接收普通消息
- 微信开发三 接收普通消息
- 微信公众平台开发【接收消息】接收普通消息
- 微信【接收普通消息】
- 微信开发<二>接收普通消息、自动回复
- 易信公众平台开发从入门到精通之接收普通消息
- 微信六大接收接口(接收普通消息)
- 微信开发:接收消息
- 用java开发微信公众号:接收和被动回复普通消息(三)
- dotNet微信公众号开发二:接收并回复普通文字消息
- 微信公众号开发_Java(3)--接收普通消息
- 微信企业号开发之接收响应消息
- 3、微信公众号开发之接收用户消息
- 开发企业微信之接收消息服务器配置
- PHP7.0微信公众平台开发4: 实例一:接收普通消息和接收事件推送
- C# 微信企业号--接收普通消息与事件
- HDU-2028Lowest Common Multiple Plus
- fzu 2020 组合数取模
- CDOJ 1292 卿学姐种花(暴力,分块,线段树)
- HDU 2588(欧拉函数的应用)
- I2C通信和ADC
- 微信开发之接收普通消息
- MySQL详解--锁
- Linux 编译内核
- Ubuntu下搭建tftp服务器最简单方法
- eclipse 导入android项目失败
- 9-多媒体
- 有关gdb
- 十秒倒计时
- UML行为图(状态图,活动图)