小程序获取用户相关信息说明

相关 API

wx.login

登录接口,小程序可以通过微信官方提供的登录能力方便地获取微信提供的用户身份标识,快速建立小程序内的用户体系。

  • 小程序调用 wx.login() 获取 临时登录凭证 code ,并回传到开发者服务器。
  • 开发者服务器以 code 换取 用户唯一标识 openid 和 会话密钥session_key。

返回值参考官方文档

wx.getUserInfo

使用该接口将不再出现授权弹窗,请使用 <button open-type="getUserInfo"></button> 引导用户主动进行授权操作

  1. 当用户未授权过,调用该接口将直接报错
  2. 当用户授权过,可以使用该接口获取用户信息
  3. 如果用户授权过一次之后,又在设置中关掉了授权(或者本地删除了小程序),那这时再调用 wx.getUserInfo 是不会成功的,需要重新获得授权。

返回值请参考官方文档

wx.authorize

提前向用户发起授权请求。调用后会立刻弹窗询问用户是否同意授权小程序使用某项功能或获取用户的某些数据,但不会实际调用对应接口。如果用户之前已经同意授权,则不会出现弹窗,直接返回成功。

返回值参考官方文档

wx.getSetting

  • 获取用户的当前设置,通过已授权过的权限可以直接获取相关数据,例如在用户已经授权过,无需授权再次获取头像等信息
  • 接口调用之前,请先向用户请求相关数据,否则返回失败

注:返回值中只会出现小程序已经向用户请求过的权限。

相关组件

button

<button open-type="getUserInfo" bindgetuserinfo="getUserInfo"></button>

获取用户信息,可以从 bindgetuserinfo 回调中获取到用户信息

此组件会向用户弹窗授权

open-data

<open-data type="userNickName"></open-data>
<open-data type="userAvatarUrl"></open-data>

用于展示微信开放的数据。

可以在不需要用户授权的情况下只能进行展示用户的头像、昵称、性别等开放信息

详情参考官方文档

开发建议

根据以上 API 和组件的特性,有如下开发建议:

  1. 当用户打开小程序时访问第一个页面时,先通过 wx.login,获取用户 openID 。这时无需弹框授权,开发者拿到 openID 可以建立自身的帐号 ID。

  2. 在第一步中,拿到 openID 后,判断是新用户还是老用户。如果是老用户,可以直接登录;如果是新用户,可先在小程序首页展示你的信息服务,让用户对这个小程序有大概的了解,再引导用户进行下一步的操作。

  3. 当需要获取用户头像昵称的时候,对用户展示一个登录页面,这个页面只有一个最重要的操作,引导用户进行登录。

注:

  • 以上内容可以根据自身业务场景进行更改,用户授权过才能获取相关信息的逻辑需要遵循
  • 用户信息的更详细功能,比如 unionId 等,请参考官方网站
Copyright © Sodo Tech 2014-2018 all right reserved,powered by Gitbook最后更新: 2018-06-07 16:40

results matching ""

    No results matching ""