• 下载
  • 社区

my.getOpenUserInfo

版本需求:基础库 1.16.4 或更高版本;支付宝客户端 10.1.35 或更高版本,低版本需要做 兼容处理


此接口可获取支付宝会员的基础信息(头像图片地址、昵称、性别、国家码、省份、所在市区),接入方法请参考 获取会员基础信息介绍。如需获取支付宝会员标识(user_id),请调用 my.getAuthCode 和 alipay.system.oauth.token 接口。


相关问题请参见 获取会员基础信息 FAQ

使用注意

  • my.getOpenUserInfo  只能在真机上调试(无法在 IDE 进行调试),以获取支付宝会员的基础信息。
  • 本功能需要用户主动触发才能激活,所以该功能不由 API 直接调用,需用 <button> 组件 的点击来触发。将 <button> 组件 open-type 的值设置为 getAuthorize,当用户点击并同意之后,可以通过my.getOpenUserInfo 接口获取到支付宝服务器返回的基础信息,若用户未授权,直接调用my.getOpenUserInfo 接口,则无法返回正确信息。
  • 需添加 获取会员基础信息 功能后,才可调用此接口。
  • 不能通过 my.getOpenUserInfo 接口获取支付宝会员标识(user_id)。


示例代码

唤起授权框,推荐兼容方案如下:

1<!-- .axml -->
2<button a:if="{{canIUseAuthButton}}" open-type="getAuthorize" 
3onGetAuthorize="onGetAuthorize" onError="onAuthError" 
4scope='userInfo'>
5    会员基础信息授权
6</button>


Button 属性说明

属性

说明

open-type

getAuthorize为授权组件(固定值)。

scope

userInfo(固定值)。

onGetAuthorize

授权成功回调(在回调里可以调用获取信息的接口)。

onError

授权失败回调(包括用户拒绝和系统异常)。

获取用户基础信息

用户点击同意后,即可通过 my.getOpenUserInfo() 获取用户基础信息:

 1// .js 
 2onGetAuthorize(res) {
 3     my.getOpenUserInfo({
 4      fail: (res) => {
 5      },
 6      success: (res) => {
 7        let userInfo = JSON.parse(res.response).response // 以下方的报文格式解析两层 response
 8      }
 9    });
10    },


返回 res 报文格式

  • 成功返回 res 报文格式示例如下:

{"response": "{"response": {"code": "10000","msg": "Success","countryCode": "CN","gender": "f","nickName": "XXX","avatar": "https://tfs.alipayobjects.com/images/partner/XXXXXXXX","city": "南通市","province": "江苏省"}}"}


  • 未接入“获取用户基础信息”的功能包,返回 res 报文格式示例如下:

{"response":"{"response":{"code":"40006","msg":"Insufficient Permissions","subCode":"isv.insufficient-isv-permissions","subMsg":"ISV权限不足,建议在开发者中心检查对应功能是否已经添加"}}"}


success 回调函数

入参为 res 对象,Object 类型,属性被解析后如下表所示:

注:在 IDE 0.70 或以上的版本支持返回全部 6 个参数,由于安全原因,其中 avatar 和 nickName 是当前登录 IDE 用户的真实值,其它 4 个属性为 mock 数据,在真机上上显示为真实值。

名称

类别

类型

描述

avatar

基础类型

String

头像图片地址

nickName

基础类型

String

昵称

gender

基础类型

String

性别,男对应“m”,女对应“f”

countryCode

基础类型

String

国家码

province

基础类型

String

省份

city

基础类型

String

所在市区