ECStore 外部调用接口

<?php
$api_params = array('tid' => '171020150090107');//订单编号
$basic_params = array(
    'to_api_v' => '2.3.9', //版本号
    'direct' => 'true', // 
    'task' => uniqid(),
    'method' => 'b2c.order.detail22',
);
$token='';
$params = array_merge($api_params, $basic_params);
$params['sign'] = get_sign($params,$token);
//$url = 'http://202.104.118.80/index.php/api';
$url = 'http://localhost/ecstore/index.php/api';
///////*/ 
/* 使用POST方法将上述$params提交至$url即可 
///////*/
$response=curl_request($url,$params);
$data = json_decode($response, true);
print_r($data);
//参数1:访问的URL,参数2:post数据(不填则为GET),参数3:提交的$cookies,参数4:是否返回$cookies
 function curl_request($url,$post='',$cookie='', $returnCookie=0){
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $url);
        curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)');
        curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($curl, CURLOPT_AUTOREFERER, 1);
        curl_setopt($curl, CURLOPT_REFERER, "http://www.baidu.com");
        if($post) {
            curl_setopt($curl, CURLOPT_POST, 1);
            curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
        }
        if($cookie) {
            curl_setopt($curl, CURLOPT_COOKIE, $cookie);
        }
        curl_setopt($curl, CURLOPT_HEADER, $returnCookie);
        curl_setopt($curl, CURLOPT_TIMEOUT, 10);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
        $data = curl_exec($curl);
        if (curl_errno($curl)) {
            return curl_error($curl);
        }
        curl_close($curl);
        if($returnCookie){
            list($header, $body) = explode("

", $data, 2);
            preg_match_all("/Set-Cookie:([^;]*);/", $header, $matches);
            $info['cookie']  = substr($matches[1][0], 1);
            $info['content'] = $body;
            return $info;
        }else{
            return $data;
        }
}
function get_sign($params, $token) {
    return strtoupper(md5(strtoupper(md5(assemble($params))) . $token)); //开源软件:phpfensi.com 
}
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;
}
?>
原文地址:https://www.cnblogs.com/limonyun/p/7700167.html