码迷,mamicode.com
首页 > 微信 > 详细

微信企业号开发:消息类型与差别

时间:2017-08-18 18:33:40      阅读:290      评论:0      收藏:0      [点我收藏+]

标签:data   fill   适用于   line   推送   server   family   current   res   

微信企业号的消息。分成两种,调用微信接口发送的消息在接口文档中叫做发送消息,这样的消息是json格式的。在微信server给我们配置的URL post数据时发送的消息叫做接收消息和事件,须要加密解密,不须要调用微信接口,这样的消息的格式是XML格式的。

两种消息的差别和联系:

发送消息是json格式的,不须要加密解密。须要调用微信的接口,须要AccessToken,这样的消息适用于公众号主动推送下发消息。

接收消息和事件的格式是XML格式的,须要加密,不须要调用微信接口,不须要AccessToken。但每次都会包括msg_signature、timestamp、nonce等几个參数。这类消息事实上是微信把数据post到我们配置的URL时发生的。



事实上细致分析能够发现:全部主动调用微信接口的都须要參数AccessToken。不须要加密解密,json格式的包括创建菜单,管理通信录等。

而在微信把数据post到我们配置的URL时,则须要解密加密。不须要调用微信接口,不须要AccessToken,但每次都会包括msg_signature、timestamp、nonce等几个參数,XML格式的数据。


在接收消息与事件中,消息又分为:普通消息。事件,被动响应消息三类消息。

1普通消息事实上就是用户发送给企业号的消息。

   实际执行路径是,用户发送消息,微信server把消息处理后post给我们配置的URL。我们在配置的URL的后台就能够获得用户发送的消息。

2事件,事实上也是用户的特殊动作导致的消息。比如点击菜单等。

实际执行路径是,用户发送消息。微信server把消息处理后post给我们配置的URL,我们在配置的URL的后台就能够获得用户发送的消息。

3被动响应消息。事实上是微信server把前两类消息post给我们配置的URL后,我们通过HttpContext.Current.Response.Write(encryptResponse)这样的方式,发送给微信server。微信server在把消息转给用户的消息。


细致分析能够发现前两类是用户是主动者,而被动响应消息是企业号由于用户的某些动作而产生的回应,这也许就是微信把这类消息叫做被动响应消息的原因吧。

前两类消息的流程图

技术分享

被动对应消息的顺序恰好相反。

技术分享

发送消息和被动响应消息有什么差别呢?

发送消息是公众号主动推送消息给用户,被动响应消息是由于用户的原因导致了微信server器post到URL上。

从用户角度来说没有太大差别。


比如:用户回复1,公众号回复1,也就是简单的聊天。两种方式都能够。但被动响应消息速度能快一些,主动发送消息略微慢一点。但被动响应消息不能主动推送,主动发送消息却能够主动发送。

微信企业号开发:消息类型与差别

标签:data   fill   适用于   line   推送   server   family   current   res   

原文地址:http://www.cnblogs.com/cynchanpin/p/7390732.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!