下面分两步介绍一下 微信小程序 获取unionid的过程.
1. 首先 在微信公众平台注册小程序 , 然后在小程序上模拟登录流程.
注 : 这里只是简单登录流程, 实际中需要维护登录态, wx.checkSession() 可以检查此时的登录态是否过期. 若过期, 要再次调用 wx.login() , 否则调用 wx.getUserInfo() 会拿不到用户数据.
注 : 此时后台服务器接收到你发的 code, 再用appid和appSecret等请求微信可以拿到openid和session_key encrypted_data, iv 等数据, 通过appId, appSecret解密可以获得openid和其他信息. (此时解出来并没有unionid, 接下来看第二步)
2. 接下来到 微信开发平台去 绑定开发账号.
一开始我也是对开放平台, 公众平台什么的有点懵, 后来看到开发平台的管理中心才明白, 这些移动应用, 网站应用 或者公众号/小程序 能绑定同一个微信开发平台账号下, 则同一用户,对同一个微信开放平台下的不同应用,unionid是相同的。
大抵就是上图这样设置吧 , 立刻生效(有时也会过几分钟吧
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
openid是表示用户在你的当前应用中的唯一标示,多个应用,同一个用户的openId可能并不相同。同一用户,对同一个微信开放平台下的不同应用,unionid是相同的1:微信小程序为什么会有OpenID,其实在微信小程序里面OpenID,就代表着我们一个人,拥有一个身份z一样的东西,在我们不知道某个人的情况下,可通过OpenID来进行查询某个用户,当然OpenID不是我们自己生成的,而是前端通过微信提供的API wx.login(谢谢你对我们的支持,希望我的回答能有所作用,欢迎追问,再次表示感谢!)得到一个code,再拿这个code去调用我们自己后台的接口,后台再获得到这个code再去调用微信的方法,获取到sessionKey,OpenID,就是这么简单。
2:小程序里面unionID的作用,其实unionID和OpenID在本质上是没有任何区别的,但是如果一个在同一个公众号下面使用多个小程序(注意必须是在同一主体公众号下面绑定的小程序)的时候,这时候OpenID将会是不一样的,此时此刻将会用到unionID,因为unionID只要是在同一主体下面,unionID这个值永远是一样的,可以用来判断是否为同一个人,当然如何获取unionID,获取unionID的方式和OpenID的方式是不一样的请看以下步骤:1、用户授权之后调用wx.getUserInfo(谢谢你对我们的支持,希望我的回答能有所作用,欢迎追问,再次表示感谢!),
在学小程序吗?看看传智的视频吧,你有有所收获的!
unionid与openid的不同之处在于:openid是同一用户同一应用唯一;而unionid是同一用户不同应用唯一。
很显然,如果要拿到用户的唯一id,只能用unionid。
因为unionid是用户的私密信息,所以需要走登录入口。
uni-app框架对这块做了很好的封装,直接调用即可。不过api有点乱,手册介绍的实例是用云函数的方式获取,但云函数的相关配置比较繁琐,我们可以绕过不用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)