最近公司的业务`pc端`用到微信开放平台的`微信扫码登录`功能
同时进行了`微信公众号`开发
现在想将这两个平台`打通`,就是我需要知道用微信扫码登录并且又用`微信公众号授权登录`的用户
有什么办法将这两个平台打通呢
用传说中的`unionid`
```
关于UnionID机制
1、请注意,网页授权获取用户基本信息也遵循UnionID机制。即如果开发者有在多个公众号,或在公众号、移动应用之间统一用户帐号的需求,需要前往微信开放平台(open.weixin.qq.com)绑定公众号后,才可利用UnionID机制来满足上述需求。
2、UnionID机制的作用说明:如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的unionid来区分用户的唯一性,因为同一用户,对同一个微信开放平台下的不同应用(移动应用、网站应用和公众帐号),unionid是相同的。
```
如何操作,
![](https://www.yuanchengzhushou.cn/static/image/open1.jpg)
![](https://www.yuanchengzhushou.cn/static/image/open2.jpg)
![](https://www.yuanchengzhushou.cn/static/image/open3.jpg)
![](https://www.yuanchengzhushou.cn/static/image/open4.jpg)
设置好后,你会发现微信扫码登录
用户信息可以得到`unionid`
同时微信公众号授权登录也可以得到`unionid`
如果是同一个网友,那么`unionid`是一样的,那么通过`unionid`就可以标识同一个用户了
在微信公众号授权登录时scope参数有两个值
snsapi_base和snsapi_userinfo
```
应用授权作用域,snsapi_base (不弹出授权页面,直接跳转,只能获取用户openid),snsapi_userinfo (弹出授权页面,可通过openid拿到昵称、性别、所在地。并且, 即使在未关注的情况下,只要用户授权,也能获取其信息 )
1、上面已经提到,对于以snsapi_base为scope的网页授权,就静默授权的,用户无感知;
2、对于已关注公众号的用户,如果用户从公众号的会话或者自定义菜单进入本公众号的网页授权页,即使是scope为snsapi_userinfo,也是静默授权,用户无感知。
```