收藏
回答

云开发怎么获取用户的呢称和电话?

云开发怎么获取用户的呢称和电话?

回答关注问题邀请回答
收藏

2 个回答

  • SuperYang
    SuperYang
    2022-02-20

    昵称简单,不说。说一下手机号码的。

    html:
    <button class="get-phone-btn" open-type="getPhoneNumber" bindgetphonenumber="getPhoneNumber">快速获取</button>
    
    js:
    /** 获取手机号 */
      async getPhoneNumber(res) {
        wx.showLoading({
          title: '授权中',
          mask: true
        })
        const errMsg = res.detail.errMsg
        if (errMsg !== "getPhoneNumber:ok") {
          wx.hideLoading({
            success: (res) => {},
          })
          wx.showToast({
            title: '获取失败,请手动输入',
            icon: 'none',
            mask: true
          })
          return
        }
        const cloudID = res.detail.cloudID
        wx.showLoading({
          title: '获取中',
          mask: true
        })
    // 这里我自己封装了云函数请求API。按你的来就行。
        const resultObj = await utils.callCloudFun("getOpenData", {
          cloudIdList: [cloudID]
        })
        console.log(resultObj)
        const errCode = resultObj.result.errCode
        if (errCode !== 0) {
          wx.hideLoading({
            success: (res) => {},
          })
          wx.showToast({
            title: '获取失败,请手动输入',
            icon: 'none',
            mask: true
          })
          return
        }
        const resultStr = resultObj.result.dataList[0].json
        const resultJson = JSON.parse(resultStr)
        console.log(resultJson)
        const phone = resultJson.data.phoneNumber
        wx.hideLoading({
          success: (res) => {},
        })
      },
    
    云函数(name: getOpenData):
    const cloud = require('wx-server-sdk')
    cloud.init({
      env: cloud.DYNAMIC_CURRENT_ENV
    })
    // 云函数入口函数
    exports.main = async (event) => {
      const wxContext = cloud.getWXContext()
      const openid = wxContext.OPENID
      const cloudIdList = event.cloudIdList
      try {
        const result = await cloud.openapi.cloudbase.getOpenData({
          "openid": openid,
          "cloudidList": cloudIdList
        })
        return result
      } catch (err) {
        return err
      }
    }
    
    2022-02-20
    有用
    回复
  • 老张
    老张
    2022-02-15

    1、昵称和云开发无关,可wx.getUserProfile获取;

    2、电话号可用云调用:https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/phonenumber/phonenumber.getPhoneNumber.html

    2022-02-15
    有用
    回复
登录 后发表内容