接⼝改版后⽆法获取头像昵称替代⽅案
腾讯官⽅⽂档称,2021年12⽉27⽇之后【获取⽤户基本信息】接⼝不再输出头像、昵称信息,原⽂如下:
经测试发现确实如此,这突然变更规则⽆疑给很多开发者带来烦恼,甚⾄有些系统直接崩溃,此次变更规则后:
1、通过后台接⼝⽆法再获取⽤户头像、昵称信息,涉及受影响的业务有:关注后后台获取⽤户信息、后台定时刷新⽤户信息等业务场景
2、⽤户主动打开⽹页通过⽹页授权后获得access_token(user_info⽅式,⾮静默授权),使⽤此access_token获取⽤户信息不受影响,可正常获取⽤户头像昵称信息
也就是说,此次改版后只能在前台⽹页必须由⽤户主动授权才能获取头像和昵称,后台调⽤接⼝⽆法再获取到头像和昵称了。即:接⼝调⽤凭据access_token有两种,⼀种是⽤户在⽹页上点击授权换取的access_token,另⼀种是后台通过appKey和appSecrect换取的access_token,以前两种access_token都可以获取到头像和昵称,⽽现在只有前者能获取到(并且不能是静默授权)。
两种API如下:
为什么qq换不了头像了2021
【可获取头像、昵称的API,使⽤⽤户授权account_token】
【不可获取头像、昵称的API,使⽤后台account_token】
改进⽅案:
⽅案1:对于静默授权+后台接⼝⽅式的业务需要将程序改为前台授权⽅式,即:前台OAuth授权跳转链接参数中的scope改为user_info(需⽤户主动点击同意),⽽不是snsapi_base(静默授权)
⽅案2:对于关注后获取⽤户信息的业务,可以通过发送消息附带链接,引导⽤户点击链接进去授权获得⽤户信息