PHP微信小程序——一个后端对应多个小程序前端APPID

2018-05-10

最近遇到一个项目,商户申请了十几个小程序APPID,小程序的程序逻辑实际是一样,调用的接口也一样,只是界面上有差异,因此这些小程序都对应了一个统一的后端(要是搞十几个后端就崩溃了)。

那么问题来了,一个后端对应多个小程序前端,APPID如何切换呢?

最后想到的方案是,前后端统一制定一个规则,由前端小程序在调用后端接口的时候传参(参数规则为:cur_appid = 序号+APPID前几位)告诉后端当前用的是哪个APPID,后端维护一个固定的数组,保存所有APPID相关信息,键名即为序号+APPID前几位

124041_xad1_3477605.png

然后在接口的公共父控制器里判断是否传递了此参数,如果传递了就获取数组对应的值并更新微信官方SDK中的配置文件WxPay.Config.php(因为官方SDK都是从这个配置文件取值的),

130429_PpzD_3477605.png

这种方式的改动量是最小,但是还是遇到了一个问题,就是WxPay.Config.php中的APPID等配置都是const常量,常量是没办法动态修改的,所以只能改成static静态变量

125904_YbOm_3477605.png

同时相应的WxPayApi.php中的变量引用方式也要改变,有好多处,我是统一替换的

130053_CJGl_3477605.png

 

至此,基本大功告成,不过在具体的接口控制器中最好还是判断一下是否传了APPID,避免父控制器漏过去~

 

 

 

 

 

转载于:https://my.oschina.net/u/3477605/blog/1810114

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值