获取用户信息--getUserInfo(通过原子能力平台接入)
1 能力介绍
合作方在用户登录成功后,合作方平台可以通过accessToken调用该能力获取用户信息,包括如用户手机号码等。
注意:本接口需要服务端调用(API),请勿使用SDK调用。
为各位开发者提供更便捷的对接方法,我们提供DEMO,请下载使用:GetUserInfo接口demo
2 接口定义
| 接口名称 | getUserInfo |
| 接口描述 | 请求API资源,获取用户信息 |
| 承载协议 | HTTPS |
| 承载网络 | 公网 |
| 请求方式 | POST/GET |
| 数据格式 | 请求参数以form表单形式提交,返回数据类型为:Json |
| 约束 | 服务端调用 |
| Content-Type |
application/x-www-form-urlencoded;charset=utf-8
|
| 接口URL |
内网(DCN网络): https://10.141.243.200:8443/serviceAgent/rest/openapi/asymauth/gbcs/getUserInfo 公网: https://api.dcoos.189.cn:8100/serviceAgent/rest/openapi/asymauth/gbcs/getUserInfo |
在请求头中增加原子能力平台分配的2个参数。如何获取X-APP-KEY和X-APP-ID?
| 标识 | 类型 | 是否必填 | 字段定义 |
|---|---|---|---|
|
X-APP-KEY |
String |
是 | 原子能力平台分配的key |
|
X-APP-ID |
String |
是 | 原子能力平台分配的密钥 |
4 请求参数
天翼账号支持以POST或GET方式提交数据,考虑到请参数长度可能受限,建议以POST方式提交,请求参数个数固定,如下表所述:
通用请求参数是本规范下所有接口必传的参数,共5个,具体如下表:
| 字段标识 | 说明 | 数据类型 | 长度 | 可空 |
|---|---|---|---|---|
|
clientId |
申请应用时分配的应用ID(APPID) |
String | 20 | N |
|
timeStamp |
时间戳,毫秒 |
Long | 20 | N |
|
format |
返回格式,目前仅支持json |
String | 20 | N |
|
params |
使用XXTea加密方式对接口定义的所有参数(除APPId,timeStamp,format,sign)拼接后的字符串加密,如params=XXTea((accessToken=SDK返回的令牌信息:*********), appSecret),其中appSecret是申请应用时平台生成的应用秘钥,参数拼接无顺序要求。 |
String | 1024 | N |
|
sign |
sign参数是对除sign外其他参数的RSA加密值,加密算法如下: sign=RSA(APPId+format+params+timeStamp, RSA_Private_key) 需要注意参数拼接key升序排序。其中RSA_Private_key是合作方的RSA私钥,合作方需要向开放平台提供RSA公钥,(请在“管理中心--我的应用--查看详情”中进行配置),公钥格式要求为:1024bit pkcs#8 格式,用于访问接口时的验签。 |
String | 1024 | N |
5 响应参数
5.1 响应参数
| 字段标识 | 说明 | 数据类型 | 长度 | 可空 |
|---|---|---|---|---|
| result |
响应结果码 0表示取号成功, 小于0表示获取失败; -9999表示用户未登录或登录状态已过期, -39表示accessToken无效, -2表示接获取接入信息出错, -32表示accessToken为空, -2 表示AppID为空 |
String | 32 | N |
|
msg |
返回结果描述
结果描述与结果码result相对应 |
String | 32 | N |
|
data |
加密数据:data采用合作方的RSA公钥加密,当取号失败时,data为空,取号成功时,data中包含mobile,openId等数据,具体见data解密后数据结构 |
String | 32 | N |
5.2 data解密后数据结构
data解密后将得到json结构的数据,具体字段如下:
| 字段标识 | 说明 | 数据类型 | 长度 | 可空 |
|---|---|---|---|---|
| mobile | 手机号(如:189123456) | String | 30 | N |
| nickName | 用户昵称 | String | 30 | Y |
| openId | 用户在该应用下统一标识,可以唯一标识一个用户 | String | 32 | N |
| userIconUrl | 用户头像链接尺寸(大)160X160 | String | 256 | Y |
| userIconUrl2 | 用户头像链接尺寸(中)100*100 | String | 256 | Y |
|
userIconUrl3 |
用户头像链接尺寸(小)50X50 | String | 256 | Y |
|
用户绑定天翼账号的电子邮箱 |
String |
30 |
Y |
|
|
operator |
手机号码所属运营商:“中国电信”、“中国移动”、“中国联通” |
String |
30 |
Y |
正确返回结果示例:
Json示例:
{
"result": 0,
"msg": "操作成功",
"data":"446a47c3b601cd41dc1afe43e926c2ee"
}
data解密后:
{
"userIconUrl": "http://avatar.e.189.cn/avatar/default/default_large.jpg",
"nickName": "天翼用户",
"userIconUrl2": "http://avatar.e.189.cn/avatar/default/default_middle.jpg",
"operator": "中国移动",
"userIconUrl3": "http://avatar.e.189.cn/avatar/default/default_small.jpg",
"mobile": "18912345678",
"openId": "7a50ce59a45f1ae02f4181963ab2c681"
}