微信官方在2021年2月24号发布了一篇小程序登录、用户信息相关接口调整的通知,规定在2021年4月28日24时停止wx.getUserInfo接口获取用户信息的能力。
通知调整了什么?
这个通知主要调整的内容有三块:
- 放开wx.login获取unionid的能力:
只要开发者将小程序绑定在开放平台上,那么开发者调用这个接口就能获取到用户的unionid。这样就避免了开发者需要调用wx.getUserInfo接口让用户授权来获取用户unionid的问题。也为下面一个调整扫清了障碍。
- 停掉wx.getUserInfo接口获取用户信息的能力:
可能微信官方也意识到了wx.getUserInfo这个接口的问题,这个接口的设计其实并不合理,为啥呢?因为这一个接口干了两个事情:第一是获取用户信息(就是头像昵称等),第二呢,这个接口还承担了获取用户unionid的功能。这就导致开发者为了打通多个小程序、公众号、移动应用等的数据,而调用wx.getUserInfo接口。开发者事实上的需求只是获取用户unionid(这本应该是登录接口给出的信息),而不是用户头像信息,也就是说这个接口事实上被滥用了。
3.使用wx.getUserProfile接口获取用户信息:
如上面所说,由于意识到wx.getUserInfo接口设计不合理,微信就将这个接口废除了,用wx.getUserProfile取代之,新接口的功能很明确:获取用户信息。
怎么看待这个调整?
在我看来,这次的调整其实彻底划清楚了小程序登录与授权的界限。关于小程序登