对于第三方平台的接入,我们可以传统的微信公众号业务拓展问题,至于第三方平台就是帮我们集中管理小程序和微信公众号。在大公司当中,不同的管理员角色管理不同的角色,这样好处是能够增加安全性,缺点就是增加沟通成本和运维成本。
下面来看看我们整体架构
部署流程图:
业务流程图:
我们业务扭转主要是针对用户和客服,如果需要其他业务一样。
在公众号后台绑定小程序。
公众号管理员扫码授权,新增小程序绑定。
小程序后台默认关闭小程序搜索功能,需要小程序管理员扫码授权。
小程序绑定需要小程序管理员扫码,绑定。
小程序绑定关闭需要小程序管理员扫码。
登录授权发起页域名:正式生产环境域名
授权事件接受配置:https://正式域名/**/**/$APPID$/callback
消息校验Token: ****************************
消息加解密Key: *******************************
公众号开发域名:正式生产环境域名
白名单ip地址:域名外网ip和内网所在服务的ip地址
授权测试公众号/小程序:公众号id和小程序id
这里配置是真实环境,隐藏打码操作。配置完成第三方平台需要检验配置是否正确。
Ip地址需要运维提供部署后的服务内网ip和外网ip.
点击全网发布
全网发布检测
检测需要5分钟,完成后会有提示信息。
Tiket如何没有正常接收到,这里需要检查代码配置的appid和serkey。
如果没有正常接收到tiket需要排查,检查配置
https://正式域名/auth.html
扫码授权:(如果没有出现二维码,那么公众号的配置是没有获取到授权)
管理员授权的权限,需要在第三方平台里面配置权限
授权成功
我们授权接口会返回一个状态码,这个接口是我们自己写的回调接口。
接口查询缓存:这里我们可以通过接口方式查询缓存的接口,是否成功缓存了token信息等。
http://api接口查询
如果返回的有缓存我们的配置就全部成功了。
获取到微信公众号菜单的点击按钮key。
这里我们可以通过微信公众号的appid和加密key 去查询菜单事件信息。
https://api.weixin.qq.com/cgi-bin/get_current_selfmenu_info?access_token=
{
"is_menu_open": 1,
"selfmenu_info": {
"button": [
{
"type": "click",
"name": "自定义菜单",
"key": "V1001_TODAY_MUSIC"
},
{
"name": "菜单",
"sub_button": {
"list": [
{
"type": "view",
"name": "自定义菜单",
"url": "http://www.soso.com/"
},
{
"type": "click",
"name": "视频",
"key": "V1001_GOOD2"
},
{
"type": "click",
"name": "客服",
"key": "V1001_GOOD"
}
]
}
}
]
}
}
把微信公众号配置菜单key配置到注册中心发布。
我们需要把点击事件的按钮配置到代码里面监听,我们整个部署就完成了,如果需要其他业务扭转就需要配置其他,总体配置参数和信息,都是一样,我们只需要通过第三方平台获取到微信公众号权限token就可以实现微信公众号的业务了,因为通过扫码授权获取到微信公众号的id,微信第三方平台通过comment_token去获取到权限刷新token,微信公众号权限token需要刷新,所以我们需要配置定时任务去更新缓存。
以上就是整个部署流程和步骤。
纸上得来终觉浅,实践出真知!!!