当前位置:首页 > 行业动态 > 正文

微信小程序 getuserinfo

微信小程序的getuserinfo方法用于获取用户的基本信息,如昵称、头像等。用户授权后,可以获取到加密数据。

微信小程序 getUserPortrait

微信小程序(WeChat Mini Program)是微信公众平台推出的一种轻量级应用,可以在微信内直接运行,无需下载安装,getUserPortrait 是微信小程序中获取用户头像信息的一个方法,通过这个方法,我们可以获取到用户的头像图片、昵称等信息,本文将详细介绍如何使用 getUserPortrait 方法获取用户头像信息。

getUserPortrait 方法介绍

getUserPortrait 方法是微信小程序中的一个 API,用于获取当前登录用户的头像信息,该方法需要在小程序的页面中调用,并且需要传入一个 callback 函数作为参数,该回调函数会在获取用户头像信息成功后被调用,并接收到一个对象作为参数,该对象包含了用户的头像信息。

使用方法

1、在小程序的页面中调用 getUserPortrait 方法,

wx.getUserPortrait({
  success: function (res) {
    console.log(res);
  },
  fail: function (err) {
    console.log(err);
  }
});

2、在 success 回调函数中,可以获取到用户的头像信息,

wx.getUserPortrait({
  success: function (res) {
    console.log(res); // 输出用户头像信息
    var userInfo = res.userInfo; // 获取用户昵称等信息
    console.log(userInfo); // 输出用户昵称等信息
  },
  fail: function (err) {
    console.log(err);
  }
});

注意事项

1、getUserPortrait 方法需要在小程序的页面中调用,不能在 app.js、app.json、app.wxss 等文件中调用。

2、getUserPortrait 方法需要在用户授权后才能成功获取到用户的头像信息,在使用该方法前,需要先引导用户进行授权操作。

3、如果用户拒绝授权或者授权失败,回调函数中的 err 参数会包含错误信息,可以通过 err.detailMsg 和 err.errMsg 属性获取到具体的错误信息。

示例代码

以下是一个简单的示例代码,演示了如何使用 getUserPortrait 方法获取用户头像信息:

// pages/index/index.js
Page({
  data: {
    userInfo: null, // 存储用户头像信息的对象
    hasUserInfo: false // 标识用户是否已经授权过信息,默认为 false
  },
  onLoad: function () {
    this.getUserInfo(); // 获取用户头像信息的方法
  },
  getUserInfo: function () {
    var that = this;
    wx.getSetting({ // 获取用户的授权情况
      success: function (res) {
        if (res.authSetting['scope.userInfo']) { // 如果用户已经授权过信息
          that.setData({ // 更新 hasUserInfo 的值,表示用户已经授权过信息
            hasUserInfo: true,
            userInfo: that.data.userInfo || {} // 如果之前已经有用户头像信息,则直接使用之前的值,否则使用空对象作为初始值
          });
        } else { // 如果用户还没有授权过信息,则引导用户进行授权操作
          wx.authorize({ // 发起授权请求,请求用户授权 access_token、openid、nickname、avatarUrl、gender、city、province、country、language、email、phoneNumbers、address、remarks(需用户授权)等权限
            scope: 'scope.userInfo', // 请求用户授权的信息范围,包括基本信息和详细信息两部分,基本信息包括 openid、nickname、avatarUrl、gender,详细信息包括 city、province、country、language、email、phoneNumbers、address、remarks(需用户授权)等字段
            success: function () { // 如果授权成功,则更新 hasUserInfo 的值,表示用户已经授权过信息,并调用 getUserPortrait 方法获取用户头像信息
              that.setData({ // 更新 hasUserInfo 的值,表示用户已经授权过信息
                hasUserInfo: true,
                userInfo: that.data.userInfo || {} // 如果之前已经有用户头像信息,则直接使用之前的值,否则使用空对象作为初始值
              });
              that.getUserPortrait(); // 调用 getUserPortrait 方法获取用户头像信息的方法
            },
            fail: function () { // 如果授权失败,则提示用户无法获取头像信息的原因,无法获取您的头像信息”等文字提示框和错误码(错误码详见下表1)以及错误信息的详细描述文本(可选)等
0

随机文章