简单介绍一下微信公众号的开发流程

时间:2014-12-25 14:37:26

很多朋友对微信公众号的智能回复等功能比较感兴趣,在这篇文章中,我简单的跟大家介绍下微信公众号的开发及数据交互流程,让大家至少能大概了解微信开发是怎么一回事。


以下内容可能对非IT行业自媒体人来说,不容易理解,天行微信数据提供了一键接入智能服务,支持天行数据所有图文和数据类API接口、机器人、人脸识别、语音识别、趣味谐音、LOL战绩查询,以及各种生活常用查询功能。有需要的可以先接入体验一下微信第三方开发的乐趣。


首先,微信公众号分两种类型和两种情况,两种类型分别是订阅号和服务号,两种情况是,已认证或未认证的公众号。他们分别具体的接口权限大家可以在微信后台的“开发者中心-接口权限”看到。


如下图所示是我的接口权限:


以上显示“未获得”的接口状态,就是需要订阅号或服务号微信认证之后才有拥有的权限。

简单说,未认证的订阅号只有基础支持、自动回复和发送回复消息的接口,只有实现一些较简单的数据交互功能,例如本公众号(需要特别说明一下,本公众号也是未认证的订阅号,关于自定义菜单是一个微博关联认证的历史遗留问题,除此之外所有权限与普通未认证的订阅号一样)


那么,什么是接口?微信接口又是什么意思?

打个比方,如果一家公司是一个系统,创业之初,你可能一个人身兼多职,同时负责营销、财务、研发等,发展到了一定规模后为了提高公司整体的运行效率和服务水平,你就需要聘用不同的人才来帮你承担相应的一部分工作,那么同时,你也需要向这部分人提供对应的工作权限以满足他们的工作需要,这就类似于接口的概念。


微信接口简单说,是微信公众平台向第三方开发者提供的一个用户资源数据及功能的访问/使用权限。通过对开发者提供开放统一的API接口环境,来帮助微信第三方开发者访问微信公众平台的功能和资源,以达到充分自由的运用微信公众平台用户资源及功能的目的。

在微信上,要实现这一目的,需要开启“服务器配置”如下图所示:

如图所示:大家需要注意的是,一旦开启了服务器配置,微信平台自带的自动回复、自定义菜单等功能全部失效,所有的事件推送都会被转发到你所配置的服务器地址URL上。

简单解释下开发者ID和服务器配置各参数的作用:

AppID是应用ID,也就是微信开发者编号的意思,在微信中主要用于创建微信菜单等。

AppSecret是应用密匙,与AppID是相配合的,意思可理解为这是私密的应用编号。

URL服务器地址是微信服务器像开发者服务器推送消息和事件的地址,可理解为你家的住址。这里没什么特别要求,无论你使用什么语言开发,只要能通过HTTP服务的80端口返回符合微信要求的XML信息即可。

Token令牌可理解为用来验证安全接头暗号,让微信服务器知道对方就是我要找的人。

EncodingAESKey可理解为暗语加密交流,以免你与用户之间的交互信息被第三方获取到后泄露敏感数据。

梳理下过程,当微信用户给你的微信公众号发送消息后,消息到达微信服务器被处理成XML数据包并转发给开发者服务器(URL),开发者服务器接收到数据包后就会把用户消息经过一系列的逻辑处理并再转送给微信服务器,最后微信服务器再推送给用户。

数据交互的流程:用户发送消息—到达微信服务器—转发给开发者服务器—转送微信服务器—推送给用户

看到这里,相信大家已经知道,微信公众号的开发关键流程在开发者服务器处理用户信息这一步上,至于这一步怎么做,那就是一个大话题了。

相比而言,微信开发是很简单的,将用户消息处理成符合微信要求的XML数据包结构即可,因此开发重心全在逻辑处理上面。

如下图所示,这是一个最基础的文本消息XML结构:

上图中Content就是返回给用户的消息内容,是一个变量。

下面是我用一款工具模拟用户发送消息给服务器的交互情况:

(微信开发调试工具:http://user.tianapi.com/weixin/debug/


那么,怎么能拥有智能回复、人脸识别、微信点歌等等功能,这就需要借助第三方的API或者数据采集来实现,当开发者服务器接收到用户消息后,处理成符合对方API使用规则的请求,拿到JSON数据取出需要的内容经过一系列的处理返回给用户即可。(一个简单的微信开发代码示例

如下图所示某API接口笑话数据的示例(这是最简单的一种结构):

(天行微信接口数据服务https://www.tianapi.com


最后,这篇文章仅仅是让大家大概了解下微信公众号的开发流程。作为微信运营者,该如何使用微信的各种高级功能?如果你是真正想把微信自媒体做好的话,不好有没有技术,我的建议是用第三方平台。

毕竟一些知名的第三方平台都是公司团队在开发,各种营销功能丰富,安全稳定性方面也有保障,大家可自行百度一下。


开发平台建议使用新浪云SAE,邀请注册地址:http://t.cn/R40C6aD ,除了一定的免费额度外,新用户首次注册可获得200云豆奖励,首次充值可获得600云豆奖励。


其他与微信运营和开发有关的网站或论坛,可以参考微信自媒体导航(http://dh.tianapi.com),每个网站都有详细介绍,并按点击量排名。


相关文章:

新浪云SAE年终免费云豆福利

各种姿势接入天行微信API的办法

微信开发实例全注释代码分享

推荐有关微信开发的十个开源项目


本站所有文章均为小宇博客原创,转载请注明来源及出处!

作者:宇天行 (关于我

本文首发地址:https://www.huceo.com/post/383.html

或许您还会喜欢这些文章:

Tags: 作者:宇天行 | 分类:开发技术 | 评论:29 | 浏览:143610

您正在以游客身份发表评论:

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。