前言1.wx.login:2.wx.getUserInfo(应该舍弃):3.wx.getUserProfile(重点推介,重点解释):Summary前言虽然我是后端,但是小程序刚出来的玩家他们从小就开始学习和推出个人小程序。个人小程序包括:小猪翻译、定位助手、飘飘助手。企业小程序:码农帮手、星家教育、飘飘诊断都是我个人开发的作品。.小程序的整体体验确实比网页好,而且还可以屏蔽操作系统,而且我个人的体验是特别适合后端程序员开发使用一些好用的工具。在本文中,我将介绍近六个月到一年内通过微信登录获取用户信息的调整情况,以帮助大家更好地梳理和完成微信界面的整改。1.wx.login:官网api说明地址:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/login/wx.login.html代码:wx.login({success(res){if(res.code){//发起网络请求wx.request({url:'https://example.com/onLogin',data:{code:res.code}})}else{console.log('Loginfailed!'+res.errMsg)}}})这是干什么用的?使用该方法获取临时码,到自己的服务器后台(appId+秘钥)获取openId等用户隐私信息,获取openId的唯一途径。这个接口经常被开发者滥用。我之前的开发也是在页面中调用了onLoad、onShow、onReady,其实做了很多无用功。现在小程序规范要求在小程序初始化事件onLaunch中调用一次,然后通过getApp()的全局变量来维护用户信息就足够了。2.wx.getUserInfo(应该丢弃):官方api文档地址:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/user-info/wx.getUserInfo.html代码调用前://必须调用wx.getUserInfo({success:function(res){varuserInfo=res.userInfovarnickName=userInfo.nickNamevaravatarUrl=userInfo.avatarUrlvargender=userInfo.gender//性别0:未知,1:男,2:女varprovince=userInfo.provincevarcity=userInfo.cityvarcountry=userInfo.country}})官方最新淘汰说明为:为优化用户体验,平台将做出如下调整:2021年2月23日起,若小程序有已经绑定微信开放平台,通过wx.login接口获取的登录凭据,可以直接换取unionID。获取用户个人信息(头像、昵称、性别、地域)时,将直接获取匿名数据(包括userInfo和encryptedData中的用户信息),不调整获取加密openID和unionID数据的能力。之前发布的小程序版本不受影响,但版本更新需要适配。新增getUserProfile接口(基础库2.10.4版本支持),可获取用户头像、昵称、性别、地域信息。开发者每次通过该接口获取用户的个人信息,都需要用户进行确认。具体接口文档:《getUserProfile接口文档》由于基础库2.10.4版本开始支持getUserProfile接口(覆盖微信7.0.9及以上版本),考虑到开发者在低版本有获取用户头像昵称的需求,对于那些不支持getUserProfile在这种情况下,开发者可以继续使用getUserInfo能力。开发者可以参考getUserProfile接口文档中的示例代码进行适配。3.wx.getUserProfile(重点推广,重点讲解):获取用户信息的旧apiwx.getUserInfo的替代api为:wx.getUserProfile官方api地址:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/user-info/wx.getUserProfile.htmlCode:getUserProfile(e){//推荐使用wx.getUserProfile获取用户信息。开发者每次通过该接口获取用户个人信息都需要确认//开发者将用户快速填写的头像和昵称保存在安全的地方,避免重复弹窗。wx.getUserProfile({desc:'用于完善会员资料',//声明获取用户个人信息的目的,稍后会在弹窗中显示,请谨慎填写成功:(res)=>{this.setData({userInfo:res.userInfo,hasUserInfo:true})}})},这个是获取最新用户信息的api,其实和上面2.wx很像。getUserInfo的用法类似。应用场景为用户未授权头像和昵称时