微信开发之接收事件推送
来源:互联网 发布:网络2d枪战游戏 编辑:程序博客网 时间:2024/05/16 18:10
在微信用户和公众号产生交互的过程中,用户的某些操作会使得微信服务器通过事件推送的形式通知到开发者在开发者中心处设置的服务器地址,从而开发者可以获取到该信息。其中,某些事件推送在发生后,是允许开发者回复用户的,某些则不允许,详细说明请见本页末尾的微信推送消息与事件说明。
目录
- 1关注/取消关注事件
- 2扫描带参数二维码事件
- 3上报地理位置事件
- 4自定义菜单事件
- 5点击菜单拉取消息时的事件推送
- 6点击菜单跳转链接时的事件推送
关注/取消关注事件
用户在关注与取消关注公众号时,微信会把这个事件推送到开发者填写的URL。方便开发者给用户下发欢迎消息或者做帐号的解绑。
微信服务器在五秒内收不到响应会断掉连接,并且重新发起请求,总共重试三次
关于重试的消息排重,推荐使用FromUserName + CreateTime 排重。
假如服务器无法保证在五秒内处理并回复,可以直接回复空串,微信服务器不会对此作任何处理,并且不会发起重试。
推送XML数据包示例:
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[FromUser]]></FromUserName><CreateTime>123456789</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[subscribe]]></Event></xml>
参数说明:
使用网页调试工具调试该接口
扫描带参数二维码事件
用户扫描带场景值二维码时,可能推送以下两种事件:
- 如果用户还未关注公众号,则用户可以关注公众号,关注后微信会将带场景值关注事件推送给开发者。
- 如果用户已经关注公众号,则微信会将带场景值扫描事件推送给开发者。
1. 用户未关注时,进行关注后的事件推送
推送XML数据包示例:
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[FromUser]]></FromUserName><CreateTime>123456789</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[subscribe]]></Event><EventKey><![CDATA[qrscene_123123]]></EventKey><Ticket><![CDATA[TICKET]]></Ticket></xml>
参数说明:
2. 用户已关注时的事件推送
推送XML数据包示例:
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[FromUser]]></FromUserName><CreateTime>123456789</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[SCAN]]></Event><EventKey><![CDATA[SCENE_VALUE]]></EventKey><Ticket><![CDATA[TICKET]]></Ticket></xml>
参数说明:
使用网页调试工具调试该接口
上报地理位置事件
用户同意上报地理位置后,每次进入公众号会话时,都会在进入时上报地理位置,或在进入会话后每5秒上报一次地理位置,公众号可以在公众平台网站中修改以上设置。上报地理位置时,微信会将上报地理位置事件推送到开发者填写的URL。
推送XML数据包示例:
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[fromUser]]></FromUserName><CreateTime>123456789</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[LOCATION]]></Event><Latitude>23.137466</Latitude><Longitude>113.352425</Longitude><Precision>119.385040</Precision></xml>
参数说明:
使用网页调试工具调试该接口
自定义菜单事件
用户点击自定义菜单后,微信会把点击事件推送给开发者,请注意,点击菜单弹出子菜单,不会产生上报。
点击菜单拉取消息时的事件推送
推送XML数据包示例:
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[FromUser]]></FromUserName><CreateTime>123456789</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[CLICK]]></Event><EventKey><![CDATA[EVENTKEY]]></EventKey></xml>
参数说明:
点击菜单跳转链接时的事件推送
推送XML数据包示例:
<xml><ToUserName><![CDATA[toUser]]></ToUserName><FromUserName><![CDATA[FromUser]]></FromUserName><CreateTime>123456789</CreateTime><MsgType><![CDATA[event]]></MsgType><Event><![CDATA[VIEW]]></Event><EventKey><![CDATA[www.qq.com]]></EventKey></xml>
参数说明:
使用网页调试工具调试该接口
1 0
- 微信开发之接收事件推送
- 微信开发之接收事件推送
- 微信开发之接收事件推送
- 微信开发接收事件推送
- 微信开发四 接收事件推送
- 微信【接收事件推送】
- 微信开发(一):接收事件推送并回复
- 微信消息管理之接收事件推送
- 微信消息管理之接收事件推送
- 微信开发之事件推送与被动回复
- 微信公众号开发(2)---接收订阅事件推送并回复消息
- PHP7.0微信公众平台开发4: 实例一:接收普通消息和接收事件推送
- 接收微信服务器推送事件获取openID
- 微信接收时间推送
- 微信接收时间推送
- 接收微信的推送
- 接收微信的推送
- 微信公众号之表情推送与接收教程
- 动态规划求解最长公共子序列
- win7下QT5.6+OPENCV3.0+minGW32 的配置
- zabbix-server 自动安装脚本
- 快速排序
- 静态链接中的那点事儿(1)
- 微信开发之接收事件推送
- 教你从头到尾利用DL学梵高作画
- 有监督学习以及何为训练
- 微信开发之摇一摇
- Python学习总结,python入门,python创建对象
- GDI+ 与 GDI (平铺与拉伸)PNG背景图贴图片的方法
- Linux基础02
- 判断两个向量之间夹角是逆时针或顺时针
- 软件设计模式- 命令模式