前言
之前准备做微信开放平台的运营,代码也完成到接入测试那一步,后来就搁置了,不过最近又准备开始进行开发,就在这里记录一下公众号第三方接入的流程。
进行第三方开发之前最好拥有 微信公众平台 的开发经验,因为说实话,这次的文档比之微信公众平台开发者文档差了不止一个档次,没有相关的开发经验,很难看懂。
注册第三方平台
老一套,需要一堆认证手续以及300块。
如图,新建一个公众号第三方平台,然后通过审核即可。
其中注意一下,前期测试的时候,授权测试公众号列表,网页开发域名,白名单IP地址列表这三项一定要核对无误,每次修改都会重新审核(不过很快就会通过)。因为填错所出现的报错信息文档里面是没有任何说明,甚至是有的错误码文档里也没有。另一篇文章里记录了我第一天开发时遇见的问题,可以参考一下http://blog.csdn.net/goodzyw/article/details/45191143
开发文档
官方的开发文档在资源中心里,但是里面具体的东西我每次都要找好久……这里我稍微整理一下吧
设计资源
指的是一些按钮,图表等等,官方直接进行了统一,你可以拿来直接使用。
权限集
你所能使用的功能取决于给你授权的那个公众号所拥有的权限以及它给你授权的权限,具体规则可以参考这个权限集。
公众号授权给开放平台流程
总体说明->三、公众号一键登录授权给第三方平台方的技术流程
(是的你没有看错,这么重要且复杂的流程直接写在总体说明里,然后后面的目录就没有其他说明了)
这需要注意的是,所有的操作必须在之前所填写的网页开发域名下,否则会报错。
接下来我会按照 公众号进入页面->公众号授权->获取公众号账户信息这个流程进行一下说明
公众号进入页面
具体效果可以参考微盟这种做公众号开发的平台。简单说就是进入你准备的官网,上面有一个按钮,引导用户进入一个第三方页面:https://mp.weixin.qq.com/cgi-bin/componentloginpage?component_appid=xxxx&pre_auth_code=xxxxx&redirect_uri=xxxx,xxx换成你自己的参数
,这是用户同意授权后,会弹出安全认证,就是公众号的安全管理者需要扫码认证,成功后进入下一步公众号授权的后台流程
公众号授权
这里涉及到的全部信息均在 代公众号实现业务->代公众号调用接口 里面
component_verify_ticket
component_verify_ticket由公众平台每隔10分钟,持续推送给第三方平台方(在创建公众号第三方平台审核通过后,才会开始推送),推送地址为授权事件接收URL(取消授权也调用此地址)
component_access_token
第三方的access_token获取需要”component_appid” ,”component_appsecret”, “component_verify_ticket” ,与公众平台一样,后续需要调用接口的地方几乎都要带着它
pre_auth_code
预授权码,作用就是引导用户进入第三方授权页面的参数之一,也就是说那个链接不是静态的,每次都要动态生成
authorization_code
授权成功后,会在回调地址,也就是redirect_uri中为你添加一个auth_code(是的这里是auth_code,然后回头让你上传的名字就要改成authorization_code)
authorizer_access_token,authorizer_refresh_token
使用授权码换取公众号的授权信息,调用此接口后获取的两个参数,其中
authorizer_refresh_token(在授权的公众号具备API权限时,才有此返回值),只会在授权时刻提供,请妥善保存。 一旦丢失,只能让用户重新授权,才能再次拿到新的刷新令牌
至此授权流程完成,进入获取公众号常规信息流程
获取授权方的账户信息
通过上述流程,应该就能拿到authorizer_appid,再配合component_appid,就可以拿到账户信息,比如头像什么的。
代替授权公众号调用接口
比如设置菜单,发送客服接口什么的功能,以前用的是access_token,现在改成authorizer_access_token便可以了
报文加密解密
公众号下可以选择是否使用安全模式,在开放平台强制进行加密解密处理,实现方式其实与公众平台的是一样的,所以有过这方面开放的可以直接复用
全网发布
按照上面的流程开发,如果全部实现完成,便可以进行全网发布流程,首先是自动化测试
这里面就涉及到了整个接入流程所有关键点,使用的是自动化测试,这里全部通过后提交人工审核,人工审核再通过就可以面向市场对所有的公众号进行接入了。