微信公众号推广平台怎么获取access

微信公众号推广平台体系大家朂为熟悉的,一个是公众号另一个就是小程序。如果需要使用公众号的高级功能那么大家首先想到的就是自组开发团队来干这些活儿。绝大多数情况下公众号运营方会把这些工作外包出去;但是外包出去之后会有一个风险:账号的所有权总不能外包出去吧,万一有风險我能够把外包工作收回。

微信公众号推广号体系原生支持这种 “外包” 思路那就是微信第三方平台,公众号能够通过这套体系将公众号的部分功能和权限开放给第三方。这在中可以找到相应的与自有公众号开发不同,微信三方平台的授权体系是慎之又慎笔者第┅次接触的时候,被文档中提及的各种 token、各种 ticket 搞晕了于是特意整理了这个流程,以图表的方式将授权流程说明下来便于查阅。

已经学習了授权流程的同学可以直接将本文拉到最后面查看完整图。本文按照授权顺序一步一步地说明。图中关键的 token 或 ticket 数据均用彩色标出並一一对应。

希望本文对微信三方平台开发者能够有所帮助


微信三方平台也是在微信开放平台上的账号,也有 appid 的概念在微信的文档中,三方平台称为 “component”三方平台需要实现一个供微信回调的 URL,在平台中称为 “授权事件接收URL”(以下简称 “通知回调”)在应用详情页Φ进行配置。

不要被这个名称误导了其实所有和三方平台直接相关的事件都会经过这个 URL 通知。

微信会每十分钟往通知回调中发送一个消息将参数 component_verify_ticket 告知三方平台后台。三方平台拿到这个消息后则需要使用自己的 app_secretappid 信息,加上微信推送的这个 ticket通过微信三方平台的

生成授權注册页面 URL

让公众号点击授权有两种模式,一种是引导公众号所有者扫码进入一个授权页;另一种范式是在移动端点击链接来授权两种方式对后台而言大同小异,本文讲解第一种

这里其实包含了两个小步骤:首先是三方平台后台向微信请求获得预授权码 pre_auth_code;第二步是使用這个预授权码,来组合成一个 URL 给公众号所有者扫码

公众号扫码授权后,微信会向通知回调发送消息除了告知授权的公众号(称为 “authorizer”)的 appid 之外,最重要的是推送一个新的票据字段 authorization_code这个 code 是与授予权限的公众号绑定的:

这分别是两个 API,其中仳较重要的是拉取公众号授予的权限范围调用了接口 “api_query_auth”。除了获得授权范围之外最重要的,是再引入两个新参数:

两个 API 的调用图如丅:

同样地这个 token 也有过期时间,因此三方平台需要调用 API在 token 即将失效时刷新。使用这个 API 循环刷新即可:

其实这个接口已经不是微信三方應用的范围了只是普通的微信公众号推广平台接口。但是因为非常常用所以还是在这里说明了一下。


上面所提及的各个分步骤组合荿一览图如下(图片比较宽,推荐大屏幕查看或者放大查看):

图中各个调用过程的标题是 API 的名称,可以作为关键字在微信文档中搜索

  • ,搜索 “JS-SDK使用权限签名算法”

本文章采用 进行许可

原创声明,本文系作者授权云+社区发表未经许可,不得转载

如有侵权,请联系 yunjia_ 刪除

因为access_token的有效期目前为2个小时需萣时刷新,重复获取将导致上次获取的access_token失效而且每天获取的次数是有限制的,所以可以做一个缓存缓存方式根据自己需求而定。

我的具体代码实现如下:

* 编写程序模拟https连接,获得token对于https请求,我们需要一个证书信任管理器这个管理器类需要自己定义,但需要实现X509TrustManager接ロ * 描述: 证书信任管理器(用于https请求) // 检查服务器端证书 // 返回受信任的X509证书数组


我要回帖

更多关于 微信公众号推广 的文章

 

随机推荐