http://www.kuaidi100.com/query?type=快递运营商名&postid=快递单号
type支持的快递公司及参数说明:https://cdn.kuaidi100.com/download/chaxun(20140729).doc
PHP请求查询快递方式:
请求地址:
正式环境请求地址:https://poll.kuaidi100.com/poll/query.do
请求类型:
POST
输入参数:
名称 | 类型 | 描述描述 |
---|---|---|
customer | String | 贵司的的公司编号, 请参考邮件《快递100-企业版快递查询接口(API)——授权key及相关工具》 |
sign | String | 签名, 用于验证身份, 按param + key + customer 的顺序进行MD5加密(注意加密后字符串一定要转大写), 不需要加上“+”号, 如{“com”: “yuantong”, “num”: “500306190180”, “from”: “广东省深圳市”, “to”: “北京市朝阳区”}xxxxxxxxxxxxyyyyyyyyyyy yyyyyyyyyyyyyyyyyyyyy |
param | Object | 由其他字段拼接 |
返回结果:
字段名称 | 字段含义 |
---|---|
message | 消息体,请忽略 |
state | 快递单当前签收状态,包括0在途中、1已揽收、2疑难、3已签收、4退签、5同城派送中、6退回、7转单等7个状态,其中4-7需要另外开通才有效 |
status | 通讯状态,请忽略 |
condition | 快递单明细状态标记,暂未实现,请忽略 |
ischeck | 是否签收标记,请忽略,明细状态请参考state字段 |
com | 快递公司编码,一律用小写字母 |
nu | 单号 |
data | 最新查询结果,数组,包含多项,全量,倒序(即时间最新的在最前),每项都是对象,对象包含字段请展开 |
返回示例:
JSON格式
{"message":"ok","state":"0","status":"200","condition":"F00","ischeck":"0","com":"yuantong","nu":"V030344422","data":[{"context":"上海分拨中心/装件入车扫描 ","time":"2012-08-28 16:33:19","ftime":"2012-08-28 16:33:19",},{"context":"上海分拨中心/下车扫描 ","time":"2012-08-27 23:22:42","ftime":"2012-08-27 23:22:42",}]}
请求示例代码:
<?php//参数设置$post_data = array();$post_data["customer"] = '*****';$key= '*****' ;$post_data["param"] = '{"com":"*****","num":"*****"}';$url='http://poll.kuaidi100.com/poll/query.do';$post_data["sign"] = md5($post_data["param"].$key.$post_data["customer"]);$post_data["sign"] = strtoupper($post_data["sign"]);$o="";foreach ($post_data as $k=>$v){$o.= "$k=".urlencode($v)."&"; //默认UTF-8编码格式}$post_data=substr($o,0,-1);$ch = curl_init();curl_setopt($ch, CURLOPT_POST, 1);curl_setopt($ch, CURLOPT_HEADER, 0);curl_setopt($ch, CURLOPT_URL,$url);curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);$result = curl_exec($ch);$data = str_replace("\"",'"',$result );$data = json_decode($data,true);
?>