✅已解决 | 这个微信小程序验证返回的结果是正常的吗?

问题描述

通过Authing验证功能,在微信小程序开发者工具上通过获取微信用户信息,返回信息里面头像和昵称和我真实的微信不同,这个是正常的吗

你好,最近微信的开放能力有更新:https://developers.weixin.qq.com/community/develop/doc/000cacfa20ce88df04cb468bc52801,默认返回了「微信用户」这个昵称和头像。

请问你调用的是我们 sdk 的哪个方法获取的用户信息呢 ?

使用的是loginByCode,
image

这个 getUserInfo 换成 getUserProfile,请看一下微信的这个升级通知:https://developers.weixin.qq.com/community/develop/doc/000cacfa20ce88df04cb468bc52801

使用getUserProfile方法,提交是rawData 是正确的,可是存储的信息依然为 微信用户

收到,我们先尝试复现一下。

这边写 demo 测试了下,新用户,返回的微信昵称和头像都是正确的,看下与你的代码逻辑是否有出入,有问题的话,我们再查。代码如下:

let authing = null

Page({
   onLoad() {
       authing = new AuthenticationClient({
           appId: "xxxxxxxxx",
           appHost: 'https://core.authing.cn'
       })
   },
   /*
   * getUserProfile 需要使用 button 按钮手动触发
   */
   getUserProfile() {
       wx.getUserProfile({
           desc: '用于完善会员资料',
           success: userProfileRes = >{
               console.log('userProfileRes: ', userProfileRes)

               wx.login({
                   success: loginRes = >{
                       console.log('loginRes: ', loginRes)

                       authing.loginByCode(loginRes.code, {
                           rawData: userProfileRes.rawData
                       }).then(loginByCodeRes = >{
                           console.log('loginByCodeRes: ', loginByCodeRes)
                       })
                   }
               })
           }
       })
   }
})

:sweat_smile:我把demo代码全部放到页面里,还是相同的问题

贴一下控制台 network 中的返回值,把 appid 等私密信息抹掉,这边查下。