【www.bbyears.com--php应用】
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;
}
?>