初步探索了一下微信公众号第三方平台的开发流程;事实上第三方平台对微信公众号托管的开发与普通微信号开发基本无差异,我们只是将普通的access_token 换成了authorizer_access_token
首先我们应该梳理一下托管开发的基本工作:
准备工作:开通第三方平台
1. 公众号号授权给第三方平台的开发流程:技术角度
2. 获取公众号信息
3.第三方平台对公众号进行管理开发
目前weixin第三方平台的开发已经基本完成,接下来需要好好的总结一下相关的问题:
1.微信文档与API:
微信官方文档确实写的不是非常好,有很多地方(如参数的表达不是很确切):
# 微信推送票据的时间控制:
1) 文档说明是10分钟推送一次,事实上推送的时间和内容有时一样,有时不一样时间不好确定
2) component_access_token平台令牌,与票据相关联,最好与票据同时设置
· 解决:不管他什么时候推送,每次推送清空缓存票据,重新缓存数据
# 平台申请填写的URL在开发中要保持一致
# 微信文档中的Json有些的不标准的,并且微信主动推送过来Json数据可能与文档说明不一致
· 获取公众号用户信息的推送过来的Json与文档是不一致的
· 开发过程中一般采用试错法,逐步排查
#加解密问题:
· 平台开发数据交互统一要求加解密操作
· 微信提供加解密api版本过旧(JDK1.7)需要兼容现有环境,其次我们所安装的jdk中security中key过短会引起问题;API中对xml的解析有部分内容是有问题的
# 全网发布测试:
· 全网发布测试最好严格的遵循其说明,对每一项要求仔细审查测试
· 文档中有一些说明是不确切的,最好反复思考,多个视角揣测后进行测试验证
· 全网发布验证中,由于缓存token数据过多,最好反复验证,以便微信测试通过
总结:
· 微信文档本身有很多不足之处,所以我们对其内容需要反复的思考,揣测确定其内涵;
· 微信有很多细节是不会给你指明的,所以我们考虑问题的时候更加需要全面一点,才能更好的了解这些细节(获取openid中公众号从哪里来)
· 微信平台的开发要与我们实际的开发场景融合
2.平台开发过程中问题:
核心问题:
· 需求model的设计以及需求变更过程中model的容错性问题
· 技术,业务,管理与沟通的问题
· 数据库的设计与架构的设计
· 异常体系、日志体系的设计