微信小程序 获取用户信息 getUserInfo

获取用户信息(wx.getUserInfo())

该方法使用需要 用户授权 scope.userInfo 之后才能调用

写个小案例

wxml

<button type="primary" open-type="getUserInfo" bindgetuserinfo="getUserInfo">询问是否同意授权并获取用户信息</button>
<view class="container">
  <text>{{ userInfo.nickName }}</text>
  <text>{{userInfo.city}}</text>
  <text>{{userInfo.province}}</text>
  <text>{{userInfo.language}}</text>
  <image src='{{ userInfo.avatarUrl }}'></image>
</view>

.js

  data: {
    userInfo: {},
  },
  getUserInfo:function(){
    let that = this
    //首先查看是否得到用户 的授权
    wx.getSetting({
      success:function(res){
        //console.log(res)
        //res.authSetting['scope.userInfo']   代表用户授予权限的状态
        console.log(res.authSetting['scope.userInfo'])
        if(res.authSetting['scope.userInfo']){
          //如果用户给与了这个权限 可以进行获取用户信息
          wx.getUserInfo({
            success: (res) => {
              console.log(res.userInfo)
              that.setData({
                userInfo: res.userInfo
              })
            }
          })
        }else{
          //如果用户没有给与这个权限则  发送询问权限的请求
          wx.authorize({
            scope:"scope.userInfo",//询问授权的属性
            success:function(res){
              console.log(res)
            }
          })
        }
      }
    })
  },

注: 回调中的 this 和 当前页面 this 不一样 解决方案,1:使用 ES 6 语法, 2:定义 that(let that = this 然后 that.data)

es6语法 

wx.getUserInfo({
      success: (data) => {
        this.setData({
          // 如何确定数据被更新?调试器中 AppData
          userInfo: data.userInfo
        })
      }
    })

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 小程序开发者服务器可以通过小程序的API接口获取用户信息。在用户授权的情况下,可以调用小程序API接口wx.getUserInfo()获取用户信息,包括用户昵称、头像等基本信息。此外,还可以通过wx.login()接口获取用户的唯一标识OpenID,以及会话密钥session_key,开发者可以将session_key发送到自己的服务器进行解密获取用户信息。需要注意的是,在用户授权之前,小程序开发者服务器是无法获取用户信息的。 ### 回答2: 小程序开发者服务器可以通过以下方式获得用户信息: 1. 用户登录授权:小程序中可以通过调用wx.login()获取用户登录凭证code,然后通过wx.request()发送请求到开发者服务器,开发者服务器使用这个code与小程序的AppID和AppSecret进行校验,获取用户的openid和session_key。随后,可以通过wx.getUserInfo()获取用户信息。 2. 获取用户手机号:开发者服务器可以通过getUserPhoneNumber云函数,在用户登录授权之后调用云函数并传入加密的手机号信息,服务器端进行解密即可获取用户的手机号。 3. 小程序码:开发者可以在小程序中生成一张带有scene参数的小程序码,并将该小程序码展示给用户扫描。用户扫描小程序码后,开发者服务器可以通过获取到的scene参数识别该用户,并获取用户信息。 4. 模板消息:用户在点击小程序的模板消息时,开发者服务器可以通过获取到的form_id和openid来获取用户的信息。 需要注意的是,为了保护用户隐私,在小程序获取用户信息时需要用户明确授权,并且开发者需要在小程序的“设置”中设置相应的权限。开发者需要遵守相关的法律法规和用户协议,合法合规地获取和使用用户信息

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值