微信小程序wx.getUserProfile接口的使用

2023-11-12

导语——
1.为什么要增加—getUserProfile接口
2.接口改变之后带来的影响
3.改版之后如何使用getUserProfile接口

1.为什么要增加getUserProfile?
先上链接getUserProfile微信开发者文档
曾经的微信开发者使用getUserinfo来获得用户的昵称、头像、地区等信息。然而有些开发者在开发的过程中,没有判断用户是否为第一次登录,当用户每次打开小程序时都会弹窗,影响用户体验。(ps这是官方说法、我个人感觉还是没有必要~害的加班赶工,或者说没有感受到这个接口的魅力)
在这里插入图片描述
2.接口改变之后带来的影响
增加了wx.getUserProfile之后,小程序将不支持getUserInfo来返回个人的信息以及不会弹窗,即回收该接口的开放能力,得到的用户信息将为匿名信息。故以后的小程序如果要使用用户的昵称、头像等个人信息必须通过wx.getUserProfile方法来返回。开发者如需获取用户身份标识符只需要调用wx.login接口即可。根据自己的实际需求去选择使用哪个接口。

3.改版之后如何使用getUserProfile接口

使用方法与getUserInfo差不多。在这里贴一部分代码图片,详情请参考微信开发者文档。
WXML也需要细微改动

在这里插入图片描述
但是难点在于如何判断用户是否第一次使用该,否则也是跟以往如此,每次都要弹窗。之前如果优秀的开发者会使用返回getSeting(authSetting[‘scope.userInfo’]来判断是否第一次授权,但由于之前接口的废弃,getSeting方法也随之失效了。怎么办?
我的解决方法是使用本地缓存,如果授权,就缓存信息,再次使用小程序的时候读取缓存来判断是否曾经授权。以下是代码贴图:在这里插入图片描述
在这里插入图片描述

笔记本要没电了,就先写到这吧。

小舟从此逝,江海寄余生。

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

微信小程序wx.getUserProfile接口的使用 的相关文章

  • 三个JS,给纹理添加镜面反射(光泽)

    我有一个纹理应用于 Three js 中的对象 我想为其添加一些镜面反射或光泽 我看到这样的例子 new THREE MeshPhongMaterial color 0x996633 specular 0x050505 shininess
  • 如何使用多个 select2 框过滤表格?

    我正在尝试使用 和多个 select2 框的类来过滤表格 表格 HTML table class table tbody tr class kanban event Austin td td tr tr class csm event Ch
  • 在有限的上下文中运行 JS 代码

    我正在尝试奔跑trusted 隔离 上下文中的 JS 代码 基本上想出了这个方法 function limitedEval src context return function with this return eval src call
  • 有没有办法动态更改 jqGrid 的单元格值?

    这个问题可能已经被问过很多次了 但我想知道是否可以动态更改 jqgrid 的单元格值 我基本上有一个网格 它通过 JSON 字符串加载数据 在特定列的某些行上 该值可能为 null 因此 预先知道哪个行 ID 是一个问题 然后能够将 nul
  • Javascript 对象属性名称

    在 C 中 可以将对象属性的名称作为字符串值获取 名称 对象 Property gt myProperty 这可以在 Javascript Typescript 中完成吗 Object Keys 是我找到的唯一东西 但它给了我所有的键 示例
  • 以下文档我无法创建 Vue.js 3 的实例

    The code https stackblitz com edit vue ttt file src main js https stackblitz com edit vue ttt file src main js 问题 我正在尝试在
  • 将时间戳转换为一个数组

    在应用程序脚本 谷歌表中运行 我从 API 获取时间戳并返回此结果 1 6370611672429312E18 1 63706107263277082E18 我执行此代码并且工作正常 但问题不在数组中 我每次都需要它在数组中 const t
  • 更新存储在 chrome 扩展本地存储中的对象

    我正在开发一个 chrome 扩展 我将存储服务器发送的对象 例如 我将收到 命令 id 1 类型 A 大小 B 优先级 C 如果我有一个数据库 我会将其作为表中的一行插入commands 使用 chrome storage 我将这些对象的
  • EmberJS:对象作为查询参数来刷新模型

    我遵循了查询参数指南 http guides emberjs com v1 11 0 routing query params http guides emberjs com v1 11 0 routing query params 而且效
  • 通过 JavaScript 单击按钮/页面提交

    我想了解 asp net 框架如何知道何时单击了按钮 因此一旦收到请求 就会在服务器上触发其单击事件 我需要了解它是如何工作的 因为我想从 JavaScript 触发按钮的服务器单击事件 我能够从 JavaScript 执行页面提交 doc
  • 使用 float:left 与 display:inline-block 的 jQuery UI 拖放排序比较

    我这里有两个例子 这两个例子之间的唯一区别是 一种使用display inline block 另一种使用float left li doc item 显示 内联块 与 li doc item float left 我的问题是 displa
  • Firefox Addon 中的 JQuery 导致多个警告

    我在 Firefox 插件中使用 jquery 但我不断收到大量警告消息 如下所示 anonymous function does not always return a value System JS WARNING resource g
  • Chrome --app 相当于 Firefox\IE

    我有一个网络应用程序 客户要求单击不同按钮时更改浏览器窗口大小 我发现在那link https stackoverflow com questions 13436855 launch google chrome from the comma
  • Angular2:动态同步http请求

    Goal 发出一系列同步 http 请求并能够将它们作为一个可观察流进行订阅 示例 不工作 let query arr test1 test2 test3 function make request query arr if query a
  • 从链接打开本地文件夹

    如何通过单击任何链接打开本地文件夹视图 我尝试了很多选择 例如 a href Open folder a or a Open folder a or a Open folder a 解决方案 启动可下载链接 以下内容适用于所有浏览器 但一如
  • Firebase + Node.js:错误:找不到 XMLHttpRequest 兼容性库

    Firebase Node js On iOS 安装的 Node js npm 安装 firebase save 节点测试 js 其中 test js 是一个非常简单的连接到 Firebase 的脚本 var firebase requir
  • onPress 方法中箭头函数与普通函数的行为

    正在学习 Native React 并学习更多关于 javascript 的知识 所以我仍然不明白它的行为的很多事情 我使用 TouchableOpacity 及其 onPress 属性创建了一个按钮组件 为了让它工作 我必须发送我想要执行
  • jQuery Mobile + Admob:轮换?

    我使用 jQuery Mobile 框架创建了一个移动应用程序 所有页面都在index php中加载 使用 div 在每个页面的页脚中 我添加了Admob代码 div div div
  • Vue - 调度完成后调用 store getter?

    我正在使用 Laravel 5 7 Vue2 Vuex 我在调度调用完成后让 Vue 返回存储值时遇到一些困难 我的申请流程如下 我单击一个提交按钮 该按钮调用组件上的 validate Validate 分派到我的 addLease 操作
  • 将引导程序弹出框保留在视口内

    我正在尝试使用带有按钮的侧边栏创建一个菜单 每个按钮都有一个指定的包含相关数据的弹出窗口 不幸的是 其中一个弹出窗口可能包含任意数量的行 并且在某些情况下它可能部分位于视口之外 See http jsfiddle net bfd9f 1 h

随机推荐

  • java 利用syslog4j 实现 syslog客户端发送日志,解决日志过长被截断分批发送以及日志不完整的问题

    开发syslog客户端 方法一 引用org graylog2
  • postgresql centos7 安装

    1 postgresql安装 1 1 导入yum源 gt yum install y https download postgresql org pub repos yum reporpms EL 7 x86 64 pgdg redhat
  • OD考试经验

    一 机考政策 1 题目数量 2道简单题 各100分 1道中等难度题 200分 150分达标 分数越高越好 对后续的定级 评审等有好处 2 语言和时长 C C Java Python js等 考试2个半小时 3 答题平台 牛客网 二 机考注意
  • java转go语言,值得转吗?

    有这个想法的不在少数了 也就意味着这条路并不是想想的那样 Java确实比以前卷了 但是你能保证转过去比别人做的更好 别拿自己的劣势跟别人的优势争 先守好自己的一亩三分地 把技术提高一个层次 相对来说卷的人数就少了 其实拿GO语言和JAVA相
  • 润乾报表-report:html 的使用

  • Vue路由跳转的几种方式及解释说明

    一 router link 声明式路由 在页面中调用 在Vue中 router link称为声明式路由 常放在页面中 to绑定为跳转的目标地址 通过点击实现跳转 路由的跳转主要有两种形式 一种是通过name 另一种是path 1 1 路由不
  • Mac环境下 手动配置Gradle环境变量

    本人刚接触mac不久 今天遇到了配置gradle环境变量问题 中间遇到了一些坑 与大家分享一下 1 第一步 找到Androidstudio应用程序 右键 显示包内容 为了拿到路径 可以把gradle这个文件拖到 终端 把刚才路径 在打开的o
  • 73.输入一个整数,判断它能否被3、5、7整除,并输出以下信息之一:

    73 输入一个整数 判断它能否被3 5 7整除 并输出以下信息之一 1 能同时被3 5 7整除 2 能被其中两数 要指出哪两个 整除 3 能被其中一个数 要指出哪一个 个整除 4 不能被3 5 7任一个整除 如有错误 欢迎指出 includ
  • HTML基础——以四个标签为例

    目录 HTML 标题 实例 HTML 段落 实例 HTML 链接 实例 HTML 图像 实例 一个完整的代码 想要在网页显示图片 本章涉及的资源 eg mouse jpg HTML 标题 HTML 标题 Heading 是通过 h1 h6
  • 【数据结构】栈和队列(Stack&Queue)解析 (你能看到封面里的字吗?)

    和光同尘 我的个人主页 TECH OTAKUS SAVE THE WORLD 栈和队列 栈 栈的概念及结构 栈的实现 栈的基本操作 1 初始化栈 2 入栈 3 出栈 4 返回栈顶元素 5 返回栈的大小 元素数量 6 判断栈是否为空 7 栈的
  • 局部变量和全局变量,以及作用范围

    在写工程文件的时候 犯了一个基础性的错误 基础不牢 地动山摇 所以通过查阅资料回顾了一些相关知识 并记录下来 防止以后再发生这种惨案 变量按存储区域分 全局变量 静态全局变量和静态局部变量都存放在内存的静态存储区域 局部变量存放在内存的栈区
  • 解一元二次不等式

    题目要求 写一段程序 要求输入abc和符号然后由程序运算出该一元二次不等式的解集 pre class cpp include pre
  • 斐波那契II--规律/二分

    题目描述 小C养了一些很可爱的兔子 有一天 小C突然发现兔子们都是严格按照伟大的数学家斐波那契提出的模型来进行繁衍 一对兔子从出生后第二个月起 每个月刚开始的时候都会产下一对小兔子 我们假定 在整个过程中兔子不会出现任何意外 小C把兔子按出
  • 《深入理解计算机系统》实验四Architecture Lab下载和官方文档机翻

    前言 深入理解计算机系统 官网 http csapp cs cmu edu 3e labs html 该篇文章是是实验四Architecture Lab中的Writeup archlab pdf Simguide pdf和全部文件夹的REA
  • CBAM论文解读

    代码 https github com Jongchan attention module CBAM convolutional block attention module 表示卷积模块的注意力机制模块 是一种结合了空间 spatial
  • matlab数字信号处理(1)——正弦信号生成与时域分析

    写在前面 最近一直在用matlab在所信号处理算法的仿真工作 这一系列博客主要会分详一下遇到的一些问题及解决办法 和一些常用的功能模块的实现以及分分享 一 正弦信号生成 一段正弦信号 主要设计这些参数的设置 采样率 理论上来说要满足奈奎斯特
  • 用MapReduce实现2个表的join连接与查询

    首先准备两个CVS表单 我第一个表单为customer 第二个表单为order 接着实现2表连接查询 首先写一个实体类CustomerOrder 定义变量 package cn kgc kb15 demo05 import org apac
  • 克鲁斯卡尔算法(Kruskai)和普里姆算法(Prim)

    动画参考视频 最小生成树 Kruskal 克鲁斯卡尔 和Prim 普里姆 算法动画演示 哔哩哔哩 bilibili 克鲁斯卡尔算法 Kruskai 克鲁斯卡尔算法 从边的角度求网的最小生成树 时间复杂度为O eloge 和普里姆算法恰恰相反
  • python实现水仙花数

    水仙花数 Narcissistic number 也被称为超完全数字不变数 pluperfect digital invariant PPDI 自恋数 自幂数 阿姆斯壮数或阿姆斯特朗数 Armstrong number 水仙花数是指一个 3
  • 微信小程序wx.getUserProfile接口的使用

    导语 1 为什么要增加 getUserProfile接口 2 接口改变之后带来的影响 3 改版之后如何使用getUserProfile接口 1 为什么要增加getUserProfile 先上链接getUserProfile微信开发者文档 曾