各種快遞查詢--Api介面

來源:互聯網
上載者:User


secret 必須 授權KEY,申請請點擊快遞查詢API申請方式
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"}
 <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>
<?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;?>

Response.Charset="gb2312" 
Server.ScriptTimeout = 999999999

Dim url,nu,com
com = Request("com")'公司
nu = Request("nu")'單號

AppKey = "xxxxxxxxxx" '請將XXXXXX替換成您在http://www.ickd.cn/reg.html申請到的KEY
SendURL ="http://api.ickd.cn/?id="&AppKey&"&com="&com&"&nu="&nu&"&type=json&encode=GBK"'如果使用UTF8,請確保encode=utf8
'Response.Write SendURL

ResponseTxt=fopen(SendURL) '//擷取原始碼的函數

Function fopen(URL) 
Dim objXML 
'Set objXML=CreateObject("MSXML2.SERVERXMLHTTP.3.0") '調用XMLHTTP組件,若伺服器不支援,請換用以下兩個中的一個再試
Set objXML=Server.CreateObject("Microsoft.XMLHTTP") 
'Set objXML=Server.CreateObject("MSXML2.XMLHTTP.4.0") 

'objXML.SetTimeouts 5000, 5000, 30000, 10000' 解析DNS名字的逾時時間,建立Winsock串連的逾時時間,發送資料的逾時時間,接收response的逾時時間。單位毫秒
objXML.Open "GET",URL,False '以同步方式擷取API查詢資料
objXML.Send() '發送
If objXML.Readystate<>4 Then '狀態不為4,錯誤
Response.Write "{status:0,errCode:100,message:'擷取資料出錯'}" 
Exit Function 
End If
'Readystate屬性,傳回XML檔案資料的目前狀況,返回值分別有以下:
'0-UNINITIALIZED:XML 對象被產生,但沒有任何檔案被載入。
'1-LOADING:載入程式進行中,但檔案尚未開始解析。
'2-LOADED:部分的檔案已經載入且進行解析,但物件模型尚未生效。
'3-INTERACTIVE:僅對已載入的部分檔案有效,在此情況下,物件模型是有效但唯讀。
'4-COMPLETED:檔案已完全載入,代表載入成功。

fopen=objXML.ResponseBody
fopen=BytesToBstr(objXML.ResponseBody)'返回資訊,同時用函數定義編碼,如果您需要轉碼請選擇 

Set objXML=Nothing'關閉 
If Err.number<>0 Then 
Response.Write "{status:0,errCode:100,message:'擷取資料出錯'}" 
Err.Clear
End If
End Function

Function BytesToBstr(body) 
Dim objstream 
Set objstream = Server.CreateObject("Adodb.Stream") '//調用adodb.stream組件
objstream.Type = 1 
objstream.Mode =3 
objstream.Open 
objstream.Write body 
objstream.Position = 0 
objstream.Type = 2 
objstream.Charset = "GBK" '轉換原來預設的編碼轉換成GB2312編碼,否則直接用XMLHTTP調用有中文字元的網頁得到的將是亂碼 
BytesToBstr = objstream.ReadText 
objstream.Close 
Set objstream = Nothing 
End Function

Response.Write ResponseTxt
%>

zhongyou

 


相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.