API系统级请求参数
接入地址:http://domain.com/index.php/api
数据格式:utf-8
HTTP请求:支持GET、POST方式,支持GZIP压缩
数据格式,例:direct=true&method=b2c.payment.create&sign=6F30EF7D2005A3DAF6D14DBEFEB59A7A
数据返回格式(json)
参数 |
类型 |
是否必须 |
描述 |
direct |
string |
Y |
设置为true |
method |
String |
Y |
指定调用api的service和mehtod. 例如:method设为b2c.payment.create 那么service:api.b2c.payment, method:create |
sign |
String |
Y |
签名,参看签名算法 |
date |
String |
Y |
时间戳,格式为yyyy-MM-dd hh:mm:ss,例如:2008-01-25 20:23:30 |
format |
String |
N |
可选,指定响应格式。默认json |
响应结果
代码如下 |
复制代码 |
{
"res": "",
"rsp": "succ",
"data": {
"tid": "000001"
}
}
|
参数名称 |
描述 |
Rsp |
请求是否正确 , succ 为成功 , fail 为失败 |
Res |
返回的消息字符串.请求正确时为空,失败时为错误消息 |
Data |
返回请求的数据结果集 |
代码实现
代码如下 |
复制代码 |
$basic_params = array('tid' => '20141024137083');
$basic_params = array(
'to_api_v' => '2.0', //版本号
'direct' => 'true', //
'task' => uniqid(),
'method' => 'b2c.order.detail',
);
$params = array_merge($api_params, $basic_params);
$params['sign'] = gen_sign($params);
$url = 'http://domain.com/index.php/api';
///////*/
/* 使用POST方法将上述$params提交至$url即可
///////*/
$data = json_decode($response, true);
print_r($data);
function get_sign($params, $token) {
return strtoupper(md5(strtoupper(md5(assemble($params))) . $token));
}
function assemble($params) {
if (!is_array($params))
return null;
ksort($params, SORT_STRING);
$sign = '';
foreach ($params AS $key => $val) {
$sign .= $key . (is_array($val) ? assemble($val) : $val);
}
return $sign;
}
?>
|