获取接入方用户信息
接口类型: 接入方提供的接口
功能: 滴滴侧通过此接口获取用户信息
资源URL
GET:
请求参数:
参数名 | 类型 | 说明 |
---|---|---|
sign | string | 签名 |
auth_code | string | 获取用户信息的凭证,一般是接入方请求时带下此参数 |
channel | string | 来源,滴滴侧请求channel=didi,接入方可以通过channel识别签名key |
返回字段说明:
参数名 | 类型 | 说明 |
---|---|---|
errno | int | 错误码 |
data | json | 返回数据 |
open_id | 接入方用户id(必须) | |
mobile_phone | 用户手机号(必须) | |
nick_name | 用户昵称 | |
head_pic | 用户头像 |
返回示例:
成功:errno 0
失败:errno 非0
{
"errno":0,
"data":{
"open_id":"B904B7437C0E8511322ACA10455E0FDB",
"mobile_phone":"13121532879",
"nick_name":"mike",
"head_pic":"http:xxxx/xxx"
}
}
签名
/**
* @param array $aData 所有请求的一个map
* @param string $sKey 约定的签名key
* @return bool|string
*/
function generalCreateSign($aData = array(), $sKey = '' )
{
if ( empty( $aData ) || ! is_string( $sKey ) ) { //签名数据不能为空,签名key必须为字符串
return FALSE;
}
$aData['token'] = $sKey;
ksort( $aData ); //签名数据按键值字典顺序排序
$str = '';
foreach ( $aData as $k => $v ) {
if ( is_null($v) ) {
continue;
}
if ( is_array( $v ) ) {
$v = json_encode( $v );
}
$str .= trim( $k ) . '=' . trim( $v ) . '&';
}
$str = trim( $str, '&' ); //去除字符串两端的&符号
return md5( $str ); //md5
}