用快递100 HtmlAPI 接口查询各快递物流信息
1、API请求地址
http://www.kuaidi100.com/applyurl?key=[]&com=[]&nu=[]
(配参数时请先将 中括号去掉)
2、传入参数说明
参数 | 是否必需 | 说明 |
key | 是 | 快递100的授权key,如果已有快递100的key,可以直接使用已有的;如果还没有申请,请点击 快递查询API进行申请。 |
com | 是 | 快递公司编码见下表 |
nu | 是 | 快递单号 |
3、支持的公司
HtmlAPI支持快递100所有支持的公司,以下只罗列最常见的几个快递
分类 | 快递公司代码 | 公司名称 |
E | ||
ems | ems | |
emsguoji | ems国际件 | |
S | ||
shentong | 伸通 | |
shunfeng | 顺丰 | |
Y | ||
youzhengguonei | 中国邮政国内包裹/挂号信/国内小包大包 | |
youzhengguoji | 中国邮政国际包裹/挂号信/国外小包大包 |
4、返回结果说明:
提交请求后,快递100会给您返回一个可以看到结果的url地址,如:http://www.kuaidi100.com/kuaidiresult?id=23 ,您直接访问或用iframe页调用该url(调用方法见后面第四章),即可以看到结果。效果:
特别提醒:
因为EMS、顺丰和申通偶尔会不稳定, 不稳定时会先显示验证码 (如下图所示),所以请勿直接将这个页面直接解析成JSON等形式,否则会出错!如下图:
5、整体使用流程
第一步,后台创建链接,调用:http://www.kuaidi100.com/applyurl?key=[]&com=[]&nu=[] ,调用后系统会返回一个url地址,如:http://www.kuaidi100.com/kuaidiresult?id=23 。
第二步:在要显示结果的页面添加一个iframe标签,将上述结果url地址传入该iframe标签的的src值,即可在该页面查看到结果(如果要实现系统自动地将结果url传入iframe标签的src,请参考下面第五章),iframe代码示范:
<iframe name="kuaidi100" src="结果url地址" width="600" height="380" marginwidth="0" marginheight="0" hspace="0" vspace="0" frameborder="0" scrolling="no"></iframe>
如果要实现系统自动地将结果url传入iframe标签的src,请参考下面
6、 C#示范
首先加一个iframe, 取到数据后,填充它
<iframe class="address_b order_zhui" height="260px" width="100%" id="kdFrame"></iframe>
$.get("Get.aspx", { wid: wid, openid: openid, rid: rid }, function (data) { $("#bhao").hide(); if (data != null) { $("#bhao").show(); //$("#retData").html(data); $("#kdFrame").attr("src", data); } } );
后台:
//用htmlapi
WebClient client = new WebClient(); string url = string.Format("http://www.kuaidi100.com/applyurl?key={0}&com={1}&nu={2}", ApiKey, typeCom, nu); log.Info("url: " + url); Byte[] pageData = client.DownloadData(url); string pageHtml = Encoding.ASCII.GetString(pageData); log.Info("return url: " + pageHtml); Response.Write(pageHtml);
爱查快递API使用说明文档
API地址:
以前:http://api.ickd.cn/?com=[]&nu=[]&id=[]&type=[]&encode=[]&ord=[]&lang=[]
目前:http://api.ickd.cn/?id=[]&secret=[]&com=[]&nu=[]&type=[]&encode=[]&ord=[]&lang=[]
参数说明
字段 是否必须 说明
com 必须 快递公司代码(英文),所支持快递公司见如下列表
nu 必须 快递单号,长度必须大于5位
id
secret 必须
必须 授权的id
授权KEY,申请请点击快递查询API申请方式
type 可选 返回结果类型,值分别为 html | json(默认) | text | xml
encode 可选 gbk(默认)| utf8
ord 可选 asc(默认)|desc,返回结果排序
lang 可选 en返回英文结果,目前仅支持部分快递(EMS、顺丰、DHL)
注意:使用PHP的json_decode函数时必须使用UTF8的编码,如果出现json_decode失败,请尝试使用UTF8编码。
返回格式
格式:json | text | html | xml
编码:GBK| UTF8
示例:
{"status":"3","message":"","errCode":"0","data":[{"time":"2013-02-23 17:10","context":"辽宁省大连市中山区四部公司 的收件员 王光 已收件"},{"time":"2013-02-24 17:59","context":"辽宁省大连市公司 已收入"},{"time":"2013-02-24 18:11","context":"辽宁省大连市中山区四部公司 已收件"},{"time":"2013-02-26 07:33","context":"吉林省长春市景阳公司 的派件员 张金达 派件中 派件员电话15948736487"},{"time":"2013-02-26 16:47","context":"客户 同事收发家人 已签收 派件员 张金达"}],"html":"","mailNo":"7151900624","expTextName":"圆通快递","expSpellName":"yuantong","update":"1362656241","cache":"186488","ord":"ASC"}
字段说明
字段 类型 说明
status int 查询结果状态,0|1|2|3|4,0表示查询失败,1正常,2派送中,3已签收,4退回,5其他问题
errCode int 错误代码,0无错误,1单号不存在,2验证码错误,3链接查询服务器失败,4程序内部错误,5程序执行错误,6快递单号格式错误,7快递公司错误,10未知错误
message string 错误消息
data array 进度
html string 其他HTML,该字段不一定存在
mailNo string 快递单号
expSpellName string 快递公司英文代码
expTextName string 快递公司中文名
update int 最后更新时间(unix 时间戳)
cache int 缓存时间,当前时间与 update 之间的差值,单位为:秒
ord string 排序,ASC | DESC
php应用示例
<script language="javascript"> <?php $id='xxxxxxxxxxxxxxxxx';//到http://www.ickd.cn/api/reg.html申请 $url='http://api.ickd.cn/?com=shentong&nu=588035733628&id='.$id; $data=file_get_contents($url); //echo "var data='",$data,"'"; ?> $(function(){ var dataObj=<?=$data?>;//转换为json对象 var html='<tr>'; html+='<th>物流状态:</th>'; html+='<td>'; if(dataObj.status>0){ html+='<table width="520px" cellspacing="0" cellpadding="0" border="0" style="border-collapse: collapse; border-spacing: 0pt;">'; html+='<tr>'; html+='<td width="163" style="background-color:#e6f9fa;border:1px solid #75c2ef;font-size:14px;font-weight:bold;height:20px;text-indent:15px;">'; html+='时间'; html+='</td>'; html+='<td width="354" style="background-color:#e6f9fa;border:1px solid #75c2ef;font-size:14px;font-weight:bold;height:20px;text-indent:15px;">'; html+='地点和跟踪进度'; html+='</td>'; html+='</tr>'; //输出data的子对象变量 $.each(dataObj.data,function(idx,item){ html+='<tr>'; html+='<td width="163" style="border:1px solid #dddddd;font-size: 12px;line-height:22px;padding:3px 5px;">'; html+=item.time;// 每条数据的时间 html+='</td>'; html+='<td width="354" style="border:1px solid #dddddd;font-size: 12px;line-height:22px;padding:3px 5px;">'; html+=item.context;// 每条数据的状态 html+='</td>'; html+='</tr>'; }); html+='</table>'; }else{ //查询不到 html+='<span style="color:#f00">Sorry! '+dataObj.message+'</span>'; } html+='</td></tr>'; $("#shipping_detail").append(html); }); </script>
若服务器禁用了file_get_contents和fsockopen等函数,可使用CURL类,示例如下:
<?php $id='xxxxxxxxxxxxx';//API KEY $com='shunfeng';//快递公司 $nu='123456';//快递单号 $type='json'; $encode='utf8'; $gateway=sprintf('http://api.ickd.cn/?id=%s&com=%s&nu=%s&encode=%s&type=%s',$id,$com,$nu,$encode,$type); $ch=curl_init($gateway); curl_setopt($ch,CURLOPT_RETURNTRANSFER,true); curl_setopt($ch,CURLOPT_HEADER,false); $resp=curl_exec($ch); $errmsg=curl_error($ch); if($errmsg){ exit($errmsg); } curl_close($ch); echo $resp; ?>
目前所支持的快递公司列表
快递公司 代码
EMS快递 ems
申通快递 shentong
圆通快递 yuantong
中通快递 zhongtong
汇通快递 huitong
天天快递 tiantian
韵达快递 yunda
顺丰快递 shunfeng
宅急送快递 zhaijisong
CCES快递 cces
中国邮政平邮 pingyou
星晨急便 xingchen
速尔快递 sure
快捷快递 kuaijie
中铁快运 zhongtie
AAE快递 aae
安捷快递 anjie
安信达快递 anxinda
程光快递 chengguang
大田物流 datian
德邦物流 debang
DHL快递 dhl
DPEX快递 dpex
D速快递 dsu
国际Fedex fedex
Fedex国内 fedexcn
原飞航物流 feihang
丰达快递 fengda
飞康达快递 fkd
飞快达快递 fkdex
天地华宇物流 huayu
佳吉快运 jiaji
佳怡物流 jiayi
加运美快递 jiayunmei
晋越快递 jinyue
联昊通物流|快递 lianhaotong
龙邦快递 longbang
民航快递 minhang
港中能达 nengda
OCS快递 ocs
全晨快递 quanchen
全峰快递 quanfeng
全日通快递 quanritong
全一快递 quanyi
如风达快递 rufeng
盛丰物流 shengfeng
盛辉物流 shenghui
TNT快递 tnt
UPS ups
万家物流 wanjia
新邦物流 xinbang
鑫飞鸿速递 xinfeihong
信丰快递 xinfeng
亚风快递 yafeng
一邦快递 yibang
优速快递 yousu
远成物流 yuancheng
元智捷诚 yuanzhi
越丰快递 yuefeng
运通中港快递 yuntong
源伟丰 ywfex
中邮物流 zhongyou
以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索iframe
, string
, 编码
, 参数
, 代码
错误
快递物流接口api、php api接口实例、yii2 api接口开发实例、php api接口开发实例、php调用api接口实例,以便于您获取更多的相关知识。