快递100 接口谁做过

goimt 2015-06-19 12:18:24
看也他们提供的示例,可是没有PHP快递公司列表,只有一个DOC文档,里面的公司也不全,在填写快递公司的时候怎么知道填写呢,不可能对照他们DOC文档吧
谁有PHP的现成快递公司

如:

$expresses=array (
'aae' => 'AAE快递',
'ande' => '安得物流',
'anjie' => '安捷快递',
'anneng' => '安能物流',
'anxun' => '安迅物流',
'aol' => 'AOL快递',
'aoshuo' => '奥硕物流',
'aramex' => 'Aramex国际快递',
'baiqian' => '百千诚国际物流',
'baiteng' => '百腾物流',
'balunzhi' => '巴伦支',
'baotongda' => '宝通达',
'benteng' => '成都奔腾国际快递',
'changtong' => '长通物流',
'chengguang' => '程光快递',
'chengji' => '城际快递',
'chengshi100' => '城市100',
'chuanxi' => '传喜快递',
...全文
1657 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
kjyiyi 2016-07-07
  • 打赏
  • 举报
回复
http://www.kdniao.com/file/ExpressCode.xls 这里有400多家快递列表和编码,这个是快递鸟的,他们不收费,也没有查询次数限制,我们就在用他们的接口。我先附上php的demo,他们官网还有JAVA和.net 的,自己去快递鸟官网下载吧。里面的KEY和ID改过了,要重新换一下,ID和KEY都是私有的,你可以到快递鸟官网,申请一下账号就可以拿到了。 PHP对接demo

<?php
//电商ID
defined('EBusinessID') or define('EBusinessID', 1237100);
//电商加密私钥,快递鸟提供,注意保管,不要泄漏
defined('AppKey') or define('AppKey', '518a73d8-1f7f-441a-b644-33e77b49d846');
//请求url
defined('ReqURL') or define('ReqURL', 'http://api.kdniao.cc/Ebusiness/EbusinessOrderHandle.aspx');
 
/**
 * Json方式 查询订单物流轨迹
 */
function getOrderTracesByJson(){
	$requestData= "{'OrderCode':'','ShipperCode':'SF','LogisticCode':'589707398027'}";
	
	$datas = array(
        'EBusinessID' => EBusinessID,
        'RequestType' => '1002',
        'RequestData' => urlencode($requestData) ,
        'DataType' => '2',
    );
    $datas['DataSign'] = encrypt($requestData, AppKey);
	$result=sendPost(ReqURL, $datas);	
	
	//根据公司业务处理返回的信息......
	
	return $result;
}

/**
 * XML方式 查询订单物流轨迹
 */
function getOrderTracesByXml(){
	$requestData= "<?xml version=\"1.0\" encoding=\"utf-8\" ?>".
						"<Content>".
						"<OrderCode></OrderCode>".
						"<ShipperCode>SF</ShipperCode>".
						"<LogisticCode>589707398027</LogisticCode>".
						"</Content>";
	
	$datas = array(
        'EBusinessID' => EBusinessID,
        'RequestType' => '1002',
        'RequestData' => urlencode($requestData) ,
        'DataType' => '1',
    );
    $datas['DataSign'] = encrypt($requestData, AppKey);
	$result=sendPost(ReqURL, $datas);	
	
	//根据公司业务处理返回的信息......
	
	return $result;
}
 
/**
 *  post提交数据 
 * @param  string $url 请求Url
 * @param  array $datas 提交的数据 
 * @return url响应返回的html
 */
function sendPost($url, $datas) {
    $temps = array();	
    foreach ($datas as $key => $value) {
        $temps[] = sprintf('%s=%s', $key, $value);		
    }	
    $post_data = implode('&', $temps);
    $url_info = parse_url($url);
	if($url_info['port']=='')
	{
		$url_info['port']=80;	
	}
	echo $url_info['port'];
    $httpheader = "POST " . $url_info['path'] . " HTTP/1.0\r\n";
    $httpheader.= "Host:" . $url_info['host'] . "\r\n";
    $httpheader.= "Content-Type:application/x-www-form-urlencoded\r\n";
    $httpheader.= "Content-Length:" . strlen($post_data) . "\r\n";
    $httpheader.= "Connection:close\r\n\r\n";
    $httpheader.= $post_data;
    $fd = fsockopen($url_info['host'], $url_info['port']);
    fwrite($fd, $httpheader);
    $gets = "";
	$headerFlag = true;
	while (!feof($fd)) {
		if (($header = @fgets($fd)) && ($header == "\r\n" || $header == "\n")) {
			break;
		}
	}
    while (!feof($fd)) {
		$gets.= fread($fd, 128);
    }
    fclose($fd);  
    
    return $gets;
}

/**
 * 电商Sign签名生成
 * @param data 内容   
 * @param appkey Appkey
 * @return DataSign签名
 */
function encrypt($data, $appkey) {
    return urlencode(base64_encode(md5($data.$appkey)));
}

?>
lijpwsw 2015-06-19
  • 打赏
  • 举报
回复
http://www.juhe.cn/docs/api/id/43/aid/103 这里面不是介绍了怎么获得快递公司列表吗

21,888

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧