让wecenter支持unionid
一般微信公众号都是openid,但是多个应用(小程序、公众号)的同一个用户的openid都是不一样的。
这时候就会造成同一个主体(公司、个人)的多个应用里,相同的用户要注册好几次。
为了避免用户重复注册。微信就推出了unionid。
如果多个应用在微信开发者平台下绑定过,那不同的用户扫不同的应用都会返回一个相同的码,就是unionid,这个unionid。
unionid和openid 都会在授权登陆时返回,不过如果你没有去微信开发者平台绑定unionid不会出现。
所以第一步我们需要改变官方的微信用户表结构
执行下面SQL:
ALTER TABLE `aws_users_weixin`
ADD COLUMN `unionid` varchar(255) NULL AFTER `openid`,
ADD INDEX `unionid` (`unionid`) USING BTREE ;
然后在/models/openid/weixin/weixin.php的line 206行
找到
'openid' => $access_token['openid'],
在下面追加
'unionid' => $access_token['unionid'],
就可以了。
这样授权就可以保存unionid了。
后续怎么使用,等我先整合好。
暂无评论