关于微信小程序授权弹窗的注意事项

前言:微信小程序在之前使用 wx.getUserInfo 是可以直接调用授权弹窗的,但是之后微信官方发表声明

为优化用户体验,使用 wx.getUserInfo 接口直接弹出授权框的开发方式将逐步不再支持。从2018年4月30日开始,小程序与小游戏的体验版、开发版调用 wx.getUserInfo 接口,将无法弹出授权询问框,默认调用失败。正式版暂不受影响。开发者可使用以下方式获取或展示用户信息:

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

那么关于wx.getUserInfo有哪些相关的知识点呢,个人总结了一些:

自从微信小程序不支持wx.getUserInfo 直接调用授权弹窗以后,微信官方提供了获取上方两种方法来获取用户的个人信息

(1)使用button组件

button组件位于小程序的表单组件当中,可以将其open-type属性设置为getUserInfo 类型,获取用户基本信息。

<button  open-type="getUserInfo" bindgetuserinfo="getUserInfo"> 获取头像昵称 </button>

用户点击相关按钮后,调用下方的函数,将请求得到的数据存到 globalData 中,就能全局使用了

getUserInfo: function(e)  {

    app.globalData.userInfo = e.detail.userInfo

    this.setData({

            userInfo: e.detail.userInfo,     

            hasUserInfo: true

    })

(2)除button组件之外,还可以不通过wx.getUserInfo来获取用户的信息,就是说用户在没有授权的情况下,也可以获取用户信息,但是这些信息只包含用户的基本信息,如用户头像、昵称、性别、所在地等,这种可以通过一下方式获取

<open-data type="groupName" open-gid="xxxxxx"></open-data> //拉取群名称(只有当前用户在此群内才能拉取到群名称)

<open-data type="userAvatarUrl"></open-data>   //获取用户头像

<open-data type="userGender" lang="zh_CN"></open-data>  //获取用户性别

可以指定不同的type类型来指定所获得的用户信息(详情参看文档,上方有传送门)

如有谬误,欢迎指正。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容