博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信开发-接收消息和事件
阅读量:6000 次
发布时间:2019-06-20

本文共 649 字,大约阅读时间需要 2 分钟。

当我们成为开发者之后,用户向公众账号发送消息或者用户的一些操作,微信服务器会推送XML数据包到开发者填写的URL上。这些数据主要分为两类:

①消息

用户在发送消息后,微信就会推送一个xml数据包给开发者,主要分为文本、图片、语音、视频、小视频、地理位置、链接,具体结构可以查看微信官方文档。我们可以在接收到这个这个数据包之后,对它做一个处理转变成

我们可以使用的数据。

注:1.$_GLOBALS["HTTP_RAW_POST_DATA"]用来获取微信post过来的数据,主要因为$_POST只能接收php能识别的数据,所以用这个方法获取到的是原始的POST数据。

  2.simplexml_load_string将xml载入一个对象中,方便以后调用。

  3.获取到这些数据后,可以做出对应的逻辑处理。但是请在5秒内处理并回复,否则就会发起新的请求进行重试,如果不回复或者回复异常数据就会报错“该公众号暂时无法提供服务,请稍后再试”。所以如果不能在

   5秒内回复可以直接选择回复success或者空字符串。

②事件

事件的推送和消息推送基本相似,但是事件加了一个关键的节点用以和消息区分,就是event。在消息中MsgType是text而在事件中则是event,并且会用一个event节点来显示是什么事件,我们可以根据事件的类型来做出

对应的逻辑处理,事件的具体结构可以查看微信官方文档。

 

转载于:https://www.cnblogs.com/lina520/p/6137116.html

你可能感兴趣的文章
入门级----黑盒测试、白盒测试、手工测试、自动化测试、探索性测试、单元测试、性能测试、数据库性能、压力测试、安全性测试、SQL注入、缓冲区溢出、环境测试...
查看>>
composer 安装 ubuntu 12.04
查看>>
微服务(二)hystrix
查看>>
Performing a thread dump in Linux or Windows--reference
查看>>
推荐系统中常用算法 以及优点缺点对比
查看>>
cocos2d-x v3.2环境配置(现在3.x版本号可以配置该)
查看>>
穷举法解决旅行商问题
查看>>
Go语言标准库之JSON编解码
查看>>
winpcap 发送数据包
查看>>
cisco 出现 %Error opening tftp://255.255.255.255 错误解决办法
查看>>
VIM编辑器
查看>>
IE主页被篡改 地址框变灰
查看>>
linux上架设l2tp+ipsec ***服务器
查看>>
Facebook和用户界面会如何扭曲你说的话
查看>>
安卓混合开发之Cordova,NativeWebView两种实现
查看>>
git设置socks代理
查看>>
桶排序
查看>>
石化数字化交付
查看>>
如何用windows Live writer 撰写blog
查看>>
RHEL6入门系列之十九,硬盘分区与格式化
查看>>