从二月份开始起,在微信小程序中就有公告,微信登录将作出一些调整,没错,微信又要改接口了,这不是第一次,每次的改动,作为开发人员,都要想方设法重新放弃之前的习惯,前后端配合调整出一个新的策略来应对问题。
虽然官方宣城要在4月13日后更新这样的调整,但是uniapp这样的框架已经提前做出了调整,当你如果还是使用button按钮的开放API事件获取用户信息的话已经是完全行不通的了。
你将会获取到这样的信息
我们普遍的微信登录的操作方式有两种,一种是前端获取wx.login提供的code和通过用户点击按钮获取到用户的encryptedData,iv这些秘钥传给后端,让后端请求微信的接口获取到用户信息。当然也有一部分开发者是通过点击按钮获取到用户的信息,然后直接将信息传给后端的,这样的方式现在已经行不通的了。
在这个方式被禁用的同时又出现了一个新的接口wx.getUserProfile(Object object),运行这个接口就可以在程序中直接弹窗
具体的方法可以在微信登录接口中可以看得到
当然,微信此次的调整也是为提高用户体验。
因为官方觉得,之前点击按钮之后,再次出现授权窗口,这样连续的两个弹窗是很不友好的,更甚者有的程序会因为要获取手机号或者位置信息等等的,会有更多的弹窗出现。
如果你在获取用户信息的时候出现了问题,获取不到用户的昵称。头像,城市等信息,或许你没有关注到微信这次做出的调整。可以前往官网看一下。