首先公司开发了小程序, 公众号网页和app等, 之前都是用的openid来区分用户, 但openid只能标识用户在当前小程序或公众号里唯一, 我们希望用户可以在公司各个产品(比如公众号, 小程序, app里的微信登录)之间, 可以保持用户的唯一性, 还好微信给出了unionid
下面分两步介绍一下 微信小程序 获取unionid的过程
1 首先 在微信公众平台注册小程序 , 然后在小程序上模拟登录流程
注 : 这里只是简单登录流程, 实际中需要维护登录态, wxcheckSession() 可以检查此时的登录态是否过期 若过期, 要再次调用 wxlogin() , 否则调用 wxgetUserInfo() 会拿不到用户数据
注 : 此时后台服务器接收到你发的 code, 再用appid和appSecret等请求微信可以拿到openid和session_key encrypted_data, iv 等数据, 通过appId, appSecret解密可以获得openid和其他信息 (此时解出来并没有unionid, 接下来看第二步)
2 接下来到 微信开发平台去 绑定开发账号
一开始我也是对开放平台, 公众平台什么的有点懵, 后来看到开发平台的管理中心才明白, 这些移动应用, 网站应用 或者公众号/小程序 能绑定同一个微信开发平台账号下, 则同一用户,对同一个微信开放平台下的不同应用,unionid是相同的。
大抵就是上图这样设置吧 , 立刻生效(有时也会过几分钟吧
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
微信小程序 在获取用户信息的时候 有特定的要求 :
button 按钮中open-type有两种方式获取用户的信息:getUserInfo/getPhoneNumber
下面两种信息就是直接展示用户头像和用户微信名但不可获取:
下面我们主要介绍获取微信绑定的手机号的问题:(MPvue模板)
bindGetUserInfo函数中的Even里面包好detail里面会有三个参数:
返回参数的话是需要解密才能使用的,在这里介绍一下第三种使用云调用直接获取开放数据的方式(前端自己解密不需要调用后端接口了~):
1、首先你的微信小程序是需要开通云开发的。(否则的话在你获取星系以后没回参数里面是没有cloudID的)。
2、在云开发里面选择云函数然后新建云函数(注意新建云函数的名字下面需要用到的)
3、接下就是在获取用户信息以后调用函数解密:(mp vue 使用的话需要wxclouldinit()初始化 原生的可以忽略直接调用)
4、success :callback里面res 里面包含了当前微信账号大量信息:如手机账号(resresultweRunDatadataphoneNumber)
5、剩下的就简单多了 可以拿着手机号码进行信任登陆了 !
以上就是关于微信小程序 怎么获取unionid全部的内容,包括:微信小程序 怎么获取unionid、微信小程序获取用户信息、获取用户手机号码、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)