收藏
评论

获取用户信息接口优化调整官方


由于收到开发者的反馈,为了方便开发者更好地使用获取用户信息的接口,开发者仍然可以使用 wx.getUserInfo 接口获取用户信息。


具体优化调整如下:

1.获取用户头像昵称,第一次需要使用 button 组件授权,如果已经用组件授权了,wx.getUserInfo 可直接返回用户数据,无需重复授权弹窗。
2. 如果没有用 button 组件授权,wx.getUserInfo 调用接口返回失败,提醒开发者需要先使用 button 组件授权。
3. 用户可在设置中,取消授权。取消授权后需重新用 button 组件拉起授权。

此次调整仅会影响开发者工具、体验版和开发版,正式版本小程序暂不受影响。


详细可见如下接口文档:

  • 小程序:

1.使用 button 组件,并将 open-type 指定为 getUserInfo 类型,用户允许授权后,可获取用户基本信息。

详情参考文档:

https://developers.weixin.qq.com/miniprogram/dev/component/button.html


2.使用 open-data 展示用户基本信息。

详情参考文档:

https://developers.weixin.qq.com/miniprogram/dev/component/open-data.html


  • 小游戏:

1.使用用户信息按钮 UserInfoButton。

详情参考文档:

https://developers.weixin.qq.com/minigame/dev/document/open-api/user-info/wx.createUserInfoButton.html


2.开放数据域下的展示用户信息。

详细参考文档:

https://developers.weixin.qq.com/minigame/dev/document/open-api/data/wx.getUserInfo.html


请各位开发者注意及时调整接口,正式版未来也会逐步切换为这个逻辑。


130371浏览
最后一次编辑于  2018-05-11
收藏

274 个评论

  • 流沙
    流沙
    2018-05-13

    给我一个说服我的理由,好吗


    2018-05-13
    赞同
    回复
  • 流沙
    流沙
    2018-05-13

    我就无语了


    2018-05-13
    赞同
    回复
  • Elijah Zheng
    Elijah Zheng
    2018-05-13

    还好我之前没做登录的功能,刚准备写就看到了这篇文章 🤗

    2018-05-13
    赞同
    回复
  • 追风少年
    追风少年
    2018-05-13

    真tm坑爹, 这怎么改啊, 逻辑改得好多!

    2018-05-13
    赞同
    回复
  • 张建程_justingcity
    张建程_justingcity
    2018-05-12

    这样改了之后,如何判断是否已授权呢,还能用getsetting的scope.userInfo吗?

    2018-05-12
    赞同
    回复
  • 马南山
    马南山
    2018-05-12

    好吧。我还是jssdk好了。

    2018-05-12
    赞同
    回复
  • 9527
    9527
    2018-05-12

    弱弱的问一句    我想一次授权几种权限 怎么搞?  open-type   写什么  ?  头大了   这样搞我要弹出好几次弹出框

    2018-05-12
    赞同
    回复
  • 2018-05-12

    受客户和十几万用户的埋怨,原来不是我的错,都是月亮惹的祸。

    wxml:

    <button open-type='getUserInfo' bindtap='getUserInfo'>允许授权</button>

    js:

    getUserInfo: function (res) {
            console.log(res);
            wx.getUserInfo({
                withCredentials: false,
                complete:function (data) {
                    console.log(data);
                    wx.navigateTo({
                        url: '/pages/index/index',
                        success: function(res) {},
                        fail: function(res) {},
                        complete: function(res) {},
                    })
                }
            })
        },

    专门做了个授权须知的客户页面,可是授权完了,就完了,导航回去也没有动作

    2018-05-12
    赞同
    回复 2
    • Mark
      Mark
      2018-05-12
      我也想知道,授权完之后怎么回去原来的页面啊?
      2018-05-12
      回复
    • 2018-05-12
      修改了一下, wxml: <button open-type='getUserInfo' bindgetuserinfo='getUserInfo'>允许授权</button> js: getUserInfo: function (res) { console.log(res); wx.getUserInfo({ withCredentials: false, success:res=>{ console.log("getAutho",res) wx.switchTab({ url: '/pages/index/index', success: function (res) {console.log("nav",res) }, fail: function (res) { }, complete: function (res) { }, }) }, complete:function (data) { console.log("complate",data); } }) }, 这样子正常了, 首先wxml 必须是 bindgetuserinfo='getUserInfo',然后返回主页因为有菜单要用wx.switchTab,
      2018-05-12
      回复
  • JJ
    JJ
    2018-05-12

    scope.userInfo【废弃】


    为什么这个要废弃?给个判断提示不是很好吗?实在搞不懂。我授权还是走按钮的方式啊,这个scope.userInfo只作为判断都不行吗?如果判断授权了就获取信息啊,既然是授权了肯定是通过按钮点击授权的啊。

    2018-05-12
    赞同
    回复
  • marvin
    marvin
    2018-05-12

    这个调整是覆盖所有小程序版本, 还是值在一个特定小程序版本之后才有这样的调整?

    2018-05-12
    赞同
    回复

正在加载...

登录 后发表内容