华米用户授权
此接口仅适用于第三方的用户已经绑定了小米运动的情况 (To C 模式) 若第三方自主购买手环,并发放给用户,则无需此步骤,直接注册用户即可
只有授权后,通过得到华米用户的许可,才能使用对应用户的相关信息。华米开放平台的授权目前分为两个步骤。
得到小米账号系统的授权
具体步骤请参见
http://dev.xiaomi.com/docs/passport/xiaomi_oauth_authorization_code/#1-authorization-code
获得华米账号系统的授权
在回调地址得到小米账号系统返回的code之后,调用华米账号系统的方法:
POST https://account.amazfit.com/v1/service/login_by_request_token?third_name=&request_token=&app_name=&user_ip=
参数
参数名 | 含义 | 示例 | 备注 |
---|---|---|---|
third_name | 第三方的名称 | thirdparty-app-mi | 会在注册第三方时告知第三方对接人 |
request_token | 从小米账号系统获得的code | LUGU_383818E79ED87694F6E238BB838369C9 | |
app_name | 第三方应用名称 | com.third | 会在注册第三方时告知第三方对接人 |
user_ip | 服务器ip | 144.144.144.144 |
返回值
成功:
HTTP头中的状态码200 OK
返回体格式如下:
{
result : ok, //注意,ok小写
token_info:{
login_token:{value1},//返回logintoken值
app_token:{value2},//返回token值
user_id:{value3},//华米openId
ttl,//logintoken的有效时间
app_ttl//apptoken的有效时间
},
regist_info:{
is_new_user://1新用户 0老用户
regist_date:"2015-8-14 16:10:33"//例子
},
thirdparty_info:{
nickname:{三方昵称}, //用URLEncoder.encode(nickname,"utf-8"))进行了处理,需要用URLDecoder进行反向处理
icon:{头像的url}
third_id:{} //三方id
}
}
注:以上格式可以扩展
错误:
客户端错误:
HTTP 状态码200
返回的体格式如下:
{
error_code:错误码详见错误码表// 0100/0101/0106/0108
}
错误代码
编码 | 含义 |
---|---|
0100 | 无效的请求数据(必填数据为空,数据格式不正确等) |
0101 | 无效的app_name |
0102 | 无效的app_token |
0103 | 无效的验证码 |
0105 | 无效的login_token |
0106 | 三方校验失败 |
0107 | 注册失败 |
0108 | 互斥登录 |