微信小程序 wx.getUserProfile 接口获取用户信息

2023-10-26

wx.getUserInfo

开发中遇到getUserInfo一直获取不到用户信息,查询后了解到:

考虑到近期开发者对小程序登录、用户信息相关接口调整的相关反馈,为优化开发者调整接口的体验,回收wx.getUserInfo接口可获取用户授权的个人信息能力的截止时间由2021年4月13日调整至2021年4月28日24时。
然后新增了getUserProfile接口(基础库2.10.4版本开始支持),可获取用户头像、昵称、性别及地区信息,开发者每次通过该接口获取用户个人信息均需用户确认。

wx.getUserProfile

获取用户信息。页面产生点击事件(例如 bindtap 的回调中)后才可调用,每次请求都会弹出授权窗口,用户同意后返回 userInfo。该接口用于替换 wx.getUserInfo

参数:

1.lang:非必填,显示用户信息的语言
2.desc:必填,声明获取用户个人信息后的用途,不超过30个字符(必填!必填!必填!)
3.success:非必填,接口调用成功的回调函数
4.fail:非必填,接口调用失败的回调函数
5.complete:非必填,接口调用结束的回调函数(调用成功、失败都会执行)

注意:

仅小程序中 wx.getUserInfo 接口进行调整,小游戏中不受影响;为了兼容低版本,可以做以下兼容:

Page({
  data: {
    userInfo: {},
    canIUseGetUserProfile: false,
  },
  onLoad() {
    if (wx.getUserProfile) {
      this.setData({
        canIUseGetUserProfile: true
      })
    }
  },
  getUserProfile(e) {
    // 推荐使用wx.getUserProfile获取用户信息,开发者每次通过该接口获取用户个人信息均需用户确认
    // 开发者妥善保管用户快速填写的头像昵称,避免重复弹窗
    wx.getUserProfile({
      desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,最多15个中文或者30个字符
      success: (res) => {
        this.setData({
          userInfo: res.userInfo,
          hasUserInfo: true
        })
      }
    })
  },
  getUserInfo(e) {
    // 不推荐使用getUserInfo获取用户信息,预计自2021年4月13日起,getUserInfo将不再弹出弹窗,并直接返回匿名的用户个人信息
    this.setData({
      userInfo: e.detail.userInfo,
      hasUserInfo: true
    })
  },
})

open-data

之前还可以通过open-data组件进行渲染,该组件无需用户确认,可以在界面中直接展示。但现在此方法已被微信禁用,获取不到用户信息了
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微信小程序 wx.getUserProfile 接口获取用户信息 的相关文章

随机推荐

  • 性能测试-JMeter influxdb grafana性能测试监控平台-食用指南

    目录 influxdb grafana安装 influxdb grafana启动 JMeter性能数据写入influxdb JMeter 后端监听器 grafana配置 influxdb grafana安装 yum install infl
  • FreeRTOS任务基础

    任务特性 没有数量限制 一个优先级下也可以拥有多个任务 支持抢占 FreeRTOS为抢占式内核高优先级可以抢占低优先级的CPU使用权 支持优先级 决定任务运行的先后 每个任务都拥有堆栈导致了RAM使用量增大 抢占需考虑重入问题 任务状态 运
  • 操作系统 实验一 进程调度实验

    操作系统实验一 进程调度实验 题目描述 1 设计一个有N个进程并发的进程调度程序 每个进程由PCB 表示 PCB中包含进程名 优先数 服务时间等信息 2 用链表表示就绪队列 每个进程PCB用结构体结点表示 3 已知各进程的的到达时间等如下
  • vs打开qt的ui文件,报错闪退+已解决

    触发行为 使用vs打开项目 点击ui文件后 数秒后qt designer闪退 报错内容 解决 方法一 鼠标右击 在qt designer 打开后 闪退前 鼠标右击 方法二 打开qt designer 打开最近窗口 扩展 gt qt gt q
  • MapReduce job任务源码提交流程

    waitForCompletion submit 1建立连接 connect 1 创建提交Job的代理 new Cluster getConfiguration 1 判断是本地yarn还是远程 initialize jobTrackAddr
  • linux下go语言代理

    export GO111MODULE on export GOPROXY https goproxy cn
  • mapper的使用

    一 通用mapper概述 它是mybatis的一个插件 单表查询的时候 使用通用mapper会非常的方便 极大地方便开发人员 可以按照需要选择通用方法 还可以自定义通用方法 不过它也有一个非常大的局限性 只支持单表操作 不支持多表查询 1
  • 独立按键(通过按键点亮LED灯)

    我们前几节用到的是IO口的输出 这一节我们学习独立按键用到了IO口的输入 按键的接触是靠金属弹片接触 那么这个时候就会出现一个问题 按键按下就会出现抖动 根据原理图 当按键 K1或K2或K3或K4 按下 P31或P30或P32或P33 端口
  • esp8266 串口乱码

    编码问题 波特率问题 这里提一下波特率问题 8266的启动信息波特率为 74880 一般的串口调试工具没有 这里可以使用安可信串口调试助手解决
  • c++:STL-函数对象

    函数对象 函数对象的概念 1 重载函数调用操作符的类 其对象常称为函数对象 2 函数对象使用重载的 时 行为类似函数调用 也叫仿函数 本质 函数对象仿函数是一个类 不是一个函数 函数对象使用 特点 1 函数对象在使用时 可以像普通函数那样去
  • xss-labl 练习 (1--10关)

    xss lab 第一关 将name的值直接输出 可以利用 弹窗 第二关 使用第一关的方法 行不通 查看php源代码 在github上下载
  • 设计数字频率计FPGA

    设计数字频率计FPGA 数字频率计是电子测量中常用的一种仪器 它可以测量任何周期性信号的频率 在现代电子领域中 数字频率计的应用越来越广泛 其设计和实现成为了必不可少的技能 本文将介绍如何使用FPGA来实现数字频率计 在FPGA中实现数字频
  • python php 快速排序

    usr bin python coding UTF 8 def partition li left rigth temp li left 获取第一个值假定为列表的中间值 while left lt rigth 如果中间值的左边小于右边 则说
  • 分割字符串取最后一部分

    第一种方法 全分割 在取最后一部分 String dirDiveded fileName split String newName if dirDiveded length gt 0 newName dirDiveded dirDivede
  • 从零开始深度学习

    特点 从深度学习基础开始 快速进入重要高级架构的细节 从头开始实施所有内容 学习如何从头开始应用多层神经网络 卷积神经网络和循环神经网络 非常清晰和彻底的心智模型 伴随着工作代码示例和数学解释 使用易于理解的面向对象框架 从头开始实现多层神
  • js-使用attr()方法

    在使用attr 过程中遇到些许问题 总结归纳一下 获取xo标签attribute属性的值 xo attr attribute 设置attribute属性的值为value xo attr attribute value 设置多个attribu
  • 数据标准化常见问题:对整个数据集数据标准化后再划分训练集、测试集和先对训练级标准化再将规则用于测试集有什么区别(Python实现)

    在数据分析与挖掘 算法建模的都会用到数据标准化 数据的标准化 normalization 是将数据按比例缩放 使之落入一个小的特定区间 在某些比较和评价的指标处理中经常会用到 去除数据的单位限制 将其转化为无量纲的纯数值 便于不同单位或量级
  • 还在为日语动词变形感到困惑吗?一张图即可搞定

    还在为日语动词变形感到困惑吗 一张图即可搞定 身在异国他乡 不会当地语言 是寸步难行 因此 我想把自己学习到的知识以文字形式分享给大家 仅供大家参考 目前我也正处于日语自学阶段 在 如何阅读一本书 里面讲到 掌握知识的最佳方法就是记住与输出
  • Vue3通透教程【十六】TS编译配置

    文章目录 写在前面 初始化配置文件 target module lib types node include outDir 写在最后 写在前面 专栏介绍 凉哥作为 Vue 的忠实 粉丝输出过大量的 Vue 文章 应粉丝要求开始更新 Vue3
  • 微信小程序 wx.getUserProfile 接口获取用户信息

    wx getUserInfo 开发中遇到getUserInfo一直获取不到用户信息 查询后了解到 考虑到近期开发者对小程序登录 用户信息相关接口调整的相关反馈 为优化开发者调整接口的体验 回收wx getUserInfo接口可获取用户授权的