(资料图片)

这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助

微信小程序获取用户信息的几种方式

以下三种方式都无法获取到用户的openID

1. 开放组件获取用户信息该功能已无效

头像展示 灰色头像

用户昵称展示“微信用户”

用户性别、地区、语言展示为为空(“”)

用户头像用户昵称用户国家用户城市

2. wx.getUserInfo({})方法

wx.getUserInfo({    success: (res)=>{        console.log(res)    }})

3. 配置open-type属性

使用bindgetuserinfo属性绑定事件,该事件出发后有一个event参数,

onGetuserinfo(event){ //    console.log(event)},

想要获取到用户的openID有两种方法

1. 传统的小程序开发

1.  调用wx.login方法成功后获取到code2.  使用wx.request发起网络请求将code传递给后端服务器3.  后端会使用code换取到openid和session_key后再返回给前端
onLoad: function(options) {    wx.login({      success: function(res) {        if (res.code) { //如果调用wx.login后获取到code          //发起网络请求          wx.request({            url: "后端接口",            data: {              code: res.code            },            success: function(res) {              const self = this              if (逻辑成功) {                //获取到用户凭证 存儲 3rd_session                 var json = JSON.parse(res.data.Data)                wx.setStorage({                  key: "third_Session",                  data: json.third_Session                })                getUserInfo()              } else {               }            },            fail: function(res) {             }          })        }      },      fail: function(res) {       }    })}

2. 小程序云开发

创建微信小程序云开发项目后,云函数中会自带一个login云函数,该云函数中已经有获取用户openid的方法,调用该云函数后会返回当前小程序的appid和openid

wx.cloud.callFunction({    name: "login"}).then((res)=>{    console.log(res)})

https://www.niwoxuexi.com/blog/wechat/article/1938

如果对您有所帮助,欢迎您点个关注,我会定时更新技术文档,大家一起讨论学习,一起进步。

推荐内容