记录--微信小程序获取用户信息的最新方法记录
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助

微信小程序获取用户信息的几种方式
以下三种方式都无法获取到用户的openID
1. 开放组件获取用户信息<open-data></open-data>该功能已无效
- 该组件的type属性根据不同的属性值可以展示用户不同的信息
- 该方式不需要授权,因为该方式值能获取到当前登录用户自己的基础信息
- 但是该方法获取的用户信息只能展示,不可以通过js方法获取到
- 组件功能调整 开发者在未获取用户明示同意的情况下通过 组件 在小程序中展示用户个人信息,用户容易误以为自己的个人信息在未授权的情况下,被小程序获取。平台计划从2022年2月21日24时起回收通过展示个人信息的能力,若小程序需收集用户昵称头像等信息,可以通过 头像昵称填写功能 功能进行收集。具体回收方式为:
头像展示 灰色头像
用户昵称展示“微信用户”
用户性别、地区、语言展示为为空(“”)
<open-data type="userAvatarUrl">用户头像</open-data>
<open-data type="userNickName">用户昵称</open-data>
<open-data type="userCountry">用户国家</open-data>
<open-data type="userCity">用户城市</open-data>
2. wx.getUserInfo({})方法
- 该api只有已经授权过的用户才会被获取到信息,没有授权过的话调用是没用用的
wx.getUserInfo({
success: (res)=>{
console.log(res)
}
})
3. 配置open-type属性
- 该方法可以弹出授权框,授权后可使用上面第二种方法获取用户信息
使用bindgetuserinfo属性绑定事件,该事件出发后有一个event参数,
<button open-type="getUserInfo"
bindgetuserinfo="onGetuserinfo">
获取用户信息
</button> onGetuserinfo(event){ //
console.log(event)
},
想要获取到用户的openID有两种方法
1. 传统的小程序开发
1. 调用wx.login方法成功后获取到code
2. 使用wx.request发起网络请求将code传递给后端服务器
3. 后端会使用code换取到openid和session_key后再返回给前端
onLoad: function(options) {
wx.login({
success: function(res) {
if (res.code) { //如果调用wx.login后获取到code
//发起网络请求
wx.request({
url: '后端接口',
data: {
code: res.code
},
success: function(res) {
const self = this
if (逻辑成功) {
//获取到用户凭证 存儲 3rd_session
var json = JSON.parse(res.data.Data)
wx.setStorage({
key: "third_Session",
data: json.third_Session
})
getUserInfo()
} else {
}
},
fail: function(res) {
}
})
}
},
fail: function(res) {
}
})
}
2. 小程序云开发
创建微信小程序云开发项目后,云函数中会自带一个login云函数,该云函数中已经有获取用户openid的方法,调用该云函数后会返回当前小程序的appid和openid
wx.cloud.callFunction({
name: 'login'
}).then((res)=>{
console.log(res)
})
https://www.niwoxuexi.com/blog/wechat/article/1938
如果对您有所帮助,欢迎您点个关注,我会定时更新技术文档,大家一起讨论学习,一起进步。

记录--微信小程序获取用户信息的最新方法记录的更多相关文章
- 微信小程序 获取用户信息并保存登录状态
微信小程序 获取用户信息并保存登录状态:http://www.360doc.com/content/18/0124/11/9200790_724662071.shtml
- Laravel wxxcx 微信小程序获取用户信息
wxxcx 是Laravel5微信小程序登录获取用户信息扩展 部署 12345678 # 安装$ composer require iwanli/wxxcx# 注册服务# 在 /config/app. ...
- 微信小程序获取用户信息,解密encryptedData 包括敏感数据在内的完整用户信息的加密数据
package com.iups.wx.wxservice; import java.io.UnsupportedEncodingException; import java.security.Alg ...
- 微信小程序 获取用户信息 encryptData解密 C#版本
最近学习小程序开发,需要对encryptData解密,获取用户信息,官方源码没有C#版本,网上的资料比较杂,有的使用还有问题,下面贴一下自己亲试可以使用的一个源码 1.code 换取 session_ ...
- 微信小程序获取用户信息“授权失败”场景的处理
很多的时候我们在处理小程序功能的时候需要用户获取用户信息,但是呢为了信息安全,用户不授权导致授权失败场景:但是小程序第二次不在启动授权信息弹层,为了用户体验,可以用以下方式处理: function i ...
- 微信小程序-获取用户信息(getUserInfo)
当小程序抹杀掉这个接口的时候,多少人心凉了.. 作为一个初级web前端开发,我是更加懵逼,小程序员跑路了... 当时以及现在用的办法就是: 1.增加一个登陆或授权页 2.上线以后自动获取 3.增加一个 ...
- 微信小程序 获取用户信息授权
login.wxml界面 获取用户授权可以用微信提供的接口 wx.authorize, 但是获取用户信息的授权用这个接口不会弹出授权窗口 <button class="submit-b ...
- [转]wx.getUserInfo(OBJECT) 微信小程序 获取用户信息
本文转自:http://mp.weixin.qq.com/debug/wxadoc/dev/api/open.html wx.getUserInfo(OBJECT) 获取用户信息,withCreden ...
- 微信小程序 - 获取用户信息的几种方式
1. 老接口(上线使用-测试用button先获取用户信息) // 登录 wx.login({ success: res => { // 发送 res.code 到后台换取 openId, ses ...
- 微信小程序获取用户信息
App({ appData: { userInfo:{ user_portraitUrl: "", user_nick: "", user_gender: 0, ...
随机推荐
- 【framework】Activity启动流程
1 前言 ATMS启动流程 介绍了 ActivityTaskManagerService(ATMS)的启动和初始化流程,本文将介绍 Activity 的启动流程.由于 Activity 启动流程复杂, ...
- Swoole从入门到入土(18)——WebSocket服务器[心跳ping]
由于 WebSocket 是长连接,如果一定时间内没有通讯,连接可能会断开.这时候需要心跳机制,WebSocket 协议包含了 Ping 和 Pong 两个帧,可以定时发送 Ping 帧来保持长连接. ...
- linux 快速安装LAMP教程
最近学习linux,安装lamp遇到一些问题,记录下来分享一下: ------------------------------------------------------------------- ...
- Java I/O 教程(三) FileOutputStream类
Java FileOutputStream 用于将字节数据写入文件. 如果你需要将原始数据写入文件,就使用FileOutputStream类. Java.io.FileOutputStream cla ...
- 编译静态库遇到的 LNK2019 报错
前文提到了 CMake 学习 文末基本涵盖了我遇到的编译问题,但是在得到一个编译好的 .lib 文件后,还需要放到项目中引用成功后才算真正的完成静态库的编译 嗯,我之所以说这些是因为我在项目中链接静态 ...
- EnumColorProfiles WcsGetDefaultColorProfile WcsSetDefaultColorProfile的使用
#include <Windows.h> #include <Icm.h> #include <iostream> #include <string> ...
- 初级算法 - C++反转链表
顾名思义, 就是将链表的所有结点反转. 解释见:[剑指offer]反转链表,C++实现(链表) 代码: #include <iostream> struct NodeList { int ...
- Selenium入门介绍
目录 Selenium概述 浏览器支持 工具库 开发实践 等待 操作浏览器 定位元素 定位单个元素 定位多个元素 获取HTML元素内容的方式 Selenium概述 https://github.com ...
- 【Azure 事件中心】 Event Grid(事件网格)+Azure Functions处理IOT Hub中的消息
问题描述 使用IOT Hub的Events功能,使用Event Grid(事件网格)订阅IOTHub状态消息,发送到Azure Functions.那如何来创建Event Grid触发的Functio ...
- Python 潮流周刊第 41 期(摘要),赠书5本
本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章.教程.开源项目.软件工具.播客和视频.热门话题等内容.愿景:帮助所有读者精进 Python 技术,并增长职 ...