wx.getUserProfile不能和wx.login一起使用?

小程序 文章 2021-04-08 20:02 1428 0 全屏看文

AI助手支持GPT4.0

wx.getUserProfile不能和wx.login一起使用?Can't wx.getUserProfile and wx.login be used together?

wx.getUserProfile不能和wx.login一起使用?

mac 模拟器1.05.2102010 基础库2.16.0

调用wx.login获取code后,再调用wx.getUserProfile,可能会失败,触发fail函数,error msg: ''getUserProfile:fail can only be invoked by user TAP gesture"。


Mac simulator 1.05.2102010 basic library 2.16.0 call wx.login Get the code, and then call wx.getUserProfile , may fail, trigger the fail function, error msg: 'getus' erProfile:fail can only be invoked by user TAP gesture"。

回答:

|G.XIAO|:

wx.getUserProfile 用户才能触发,wx.login 不需要用户触发

如果让我们重新设计用户登陆模块,会怎么设计呢?

如果是我的话,我会这样设计:

1.用 wx.login 获取 openId(unionId),这个过程是静默的,不需要用户参与,这个能满足市场大多数应用的需求

2.对于社交分享类的应用,可以进入首页后,用户点击首页可点击区域时,申请用户头像信息(申请成功后保存到后端)

3.在我的页面在增加个用户头像更新能力即可

4.对于分享无法获取实时头像的问题,可以在用户点击分享时,先申请获取用户最新头像,然后在进行分享

这段时间社区很多人吐槽,其实我们还是要看这些改到背后的事情1.对用户隐私要求越来越严,权限细分越来越细,我觉得是好事

2.我们要抛出历史包袱去想用户授权,别被历史包袱所束缚

3.getUserInfo 的能力可以通过 wx.login 和 wx.getUserProfile 来实现,都是只需要用户操作一次,唯一的弊端是 wx.getUserProfile  每次都需要用户触发才能拿到最新头像

4.我觉得没有几个应用对头像的更新频次比微信本身要高,所以也不用在纠结了头像是否为最新的了,只需要提供用户具有更新头像的能力即可

undefined:

是的,不能在wx.login 的callback 里用,我是页面onload 时候存了code(),更新状态管理或者globaldata 都行。

然后getUserProfile 取了就行


舒克:

我是先调用的wx.getUserProfile

-EOF-

AI助手支持GPT4.0