您的位置:首页 > 移动开发 > 微信开发

公众号第三方平台 接入与全网发布

2016-06-03 14:14 525 查看


微信提示当前填写的url存在严重安全风险,无法设置,这里是官方解释:http://kf.qq.com/faq/120911VrYVrA150825qqquUf.html

此时需要接入公众号第三方平台,官方文档为:https://open.weixin.qq.com/cgi-bin/showdocument?action=dir_list&t=resource/res_list&verify=1&id=open1453779503&token=&lang=zh_CN

下面是自己踩过的坑做总结:

1、为什么一定要接入公众号第三方平台

微信之所以让我们接入公众号第三方平台,url有什么风险我不知道,我只知道接入公众号第三方平台需要开通微信开放平台账号,开放平台账号300块一年,微信公众号也300一年...多的就不说了

2、接入之前需要做什么

总体流程是:申请公众号第三方平台应用-->根据全网接入规则写接入代码-->全网发布-->发布并审核成功(要等到第二天)被限制的url即可被解除风险

3、两个很重要的url

授权事件URL(用于接收取消授权通知、授权成功通知,也用于接收ticket)
公众号消息与事件接受url(用于接收已授权公众号的消息和事件)
在全网发布的时候,微信服务器会发送相关的事件到对应的url上,因此有个小技巧就是在入口处打印日志,进行调试
4、加密问题
公众号第三方平台全网发布全部是加密处理的,因此我们接受的消息都是都是密文,要对密文进行解密,响应请求的时候也要做加密处理。
加解密可直接下载http://mp.weixin.qq.com/wiki/static/assets/a5a22f38cb60228cb32ab61d9e4c414b.zip,这里有个坑就是在授权事件URL接受到的密文是
<xml>    <AppId><![CDATA[wx3258f5f98b3508e6]]></AppId>    <Encrypt><![CDATA[]]></Encrypt></xml>

这样的包含AppId的密文,而官方给的解密方式只有
<xml>    <ToUserName><![CDATA[wx3258f5f98b3508e6]]></ToUserName>    <Encrypt><![CDATA[]]></Encrypt></xml>
这样的包含ToUserName的解密方式。因此需要我们自己去加AppId的解密方式
5、怎么授权
授权url是要我们动态生成的,所以这个授权页面肯定在我们自己应用的,授权url最主要的就是预授权码(pre_auth_code)的获取
6、接入公众号第三方平台前后我们公众号业务前后要做什么改变
其实接入公众号第三方平台前公众号数据的接口都必须带有access_token凭据,接入后这个access_token的获取通过第三方平台生成,对应第三方平台的authorizer_access_token
下面的是我对整个的流程数据流走向的理解:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  公众号 java 微信