uni-app开发微信小程序uni.getUserProfile问题总结

记录分享一下uni.getUserProfile的使用,前一段时间接手了一个小程序反馈的微信登录后无法获取用户信息问题,经排查问题原因是,源代码使用的是uni.getUserInfo方法,在今年初四月份微信团队针对微信登录做了优化,用uni.getUserProfile 代替了 uni.getUserInfo方法的使用,
 
未优化的代码则会出现,虽然已经授权但是获取不到用户的微信信息,出现了默认用户名为“微信用户”的匿名信息
 
 
使用uni.getUserProfile需要注意两点:
 
     1. 重点留意的就是 desc 和 success 这两个重要参数,千万不要忘了加 desc!!! 
 
     2. uni.login和uni.getUserProfile的调用顺序   
 
在实际开发的过程中,很多同学会选择在uni.login中包裹uni.getUserProfile,来保证获取code和获取的encryptedData顺序,从而避免解密失败
 
但实际上在调用uni.login获取code后,再调用uni.getUserProfile,可能会失败,触发fail函数,error msg: ''getUserProfile:fail can only be invoked by user TAP gesture"。所以正确的调用顺序是先调用uni.getUserProfile在其中包裹uni.login
 
 
 
 
posted @ 2022-03-03 16:26  李不懂。  阅读(7559)  评论(0编辑  收藏  举报