宅急送快遞查詢
如何利用快遞鳥提供的接口來查詢宅急送快遞的物流軌跡。
首先我們准備好需要用到的資源,
這里推薦大家去愛奇藝查看視頻教程:
https://www.iqiyi.com/v_19rxcwtwk0.html(如何從注冊到認證,最快1小時完成上百家物流軌跡查詢)
測試商戶ID:
test1617571
測試API key:
554343b2-7252-439b-b4eb-1af42c8f2175(此Key僅限測試環境使用)
API測試地址:
http://sandboxapi.kdniao.com:8080/kdniaosandbox/gateway/exterfaceInvoke.json
接下來,我們講解一下請求參數
一、接口描述/說明
請求系統級參數說明:
參數名稱 |
類型 |
說明 |
必須要求 |
RequestData |
String |
請求內容需進行URL(utf-8)編碼。請求內容JSON格式,須和DataType一致。 |
R |
EBusinessID |
String |
商戶ID,請在我的服務頁面查看。 |
R |
RequestType |
String |
請求指令類型:1002 |
R |
DataSign |
String |
數據內容簽名:把(請求內容(未編碼)+AppKey)進行MD5加密,然后Base64編碼,最后 進行URL(utf-8)編碼。詳細過程請查看Demo。 |
R |
DataType |
String |
請求、返回數據類型:2-json; |
O |
備注:R-必填(Required),O-可選(Optional),C-報文中該參數在一定條件下可選(Conditional)
這里提到了系統級參數,也相當於是公用參數,這些參數是調用每個接口都是必須要傳參的。
二、接口參數
請求內容字段定義:
參數名稱 |
類型 |
說明 |
必須要求 |
OrderCode |
String |
訂單編號 |
O |
ShipperCode |
String |
快遞公司編碼 |
R |
LogisticCode |
String |
物流單號 |
R |
CustomerName |
String |
寄件人或收件人的手機號后四位數字 |
R |
接口參數,也叫業務參數,請求的業務接口不同,參數的字段,內容也不同,是跟着業務變化的,這里我們實現的是即時查詢接口,請求指令類型:1002,快遞鳥官網要求必須傳遞快遞公司編碼和物流單號 ,宅急送快遞的編碼是ZJS
如要查看其他快遞公司的編碼,點擊此鏈接:
http://www.kdniao.com/documents
我們用真實單號(ZJS005271002251
)來完成軌跡接口調用,
請求 JSON
{'OrderCode':'','ShipperCode':zjs',LogisticCode':' ZJS005271002251
'}
請求的完整報文(URL編碼以后):RequestData=%0d%0a++++++++++++%7b%27OrderCode%27%3a%27%27%2c%27ShipperCode%27%3a%27ZJS%27%2c%27LogisticCode%27%3a%27ZJS005271002251%27%7d%0d%0a++&EBusinessID=1264783&RequestType=1002&DataSign=ZDhiODVkMjAwOWQ5YzdjMjY1MzFiZjQ3ZWE3NzlmYWE%3d&DataType=2
未編碼的請求報文:
RequestData= {'OrderCode':'','ShipperCode':'ZJS','LogisticCode':'ZJS005271002251'} &EBusinessID=1264783&RequestType=1002&DataSign=ZDhiODVkMjAwOWQ5YzdjMjY1MzFiZjQ3ZWE3NzlmYWE=&DataType=2
返回參數定義:
參數名稱 |
類型 |
說明 |
必須要求 |
EBusinessID |
String |
用戶ID |
R |
OrderCode |
String |
訂單編號 |
O |
ShipperCode |
String |
快遞公司編碼 |
R |
LogisticCode |
String |
物流運單號 |
O |
Success |
Bool |
成功與否 |
R |
Reason |
String |
失敗原因 |
O |
State |
String |
物流狀態:2-在途中,3-簽收,4-問題件 |
R |
Traces |
|||
AcceptTime |
String |
時間 |
R |
AcceptStation |
String |
描述 |
R |
Remark |
String |
備注 |
O |
返回報文信息
-
{
"LogisticCode": "ZJS005271002251",
"ShipperCode": "ZJS",
"Traces": [{
"AcceptStation": "已取件,離開[上海_華新倉配中心_金融項目一組] 發往 [上海基地]",
"AcceptTime": "2020-02-20 15:17:07"
}, {
"AcceptStation": "到達[上海基地]",
"AcceptTime": "2020-02-21 09:05:42"
}, {
"AcceptStation": "離開[上海基地] 發往 [山東_濰坊運轉中心]",
"AcceptTime": "2020-02-22 16:56:18"
}, {
"AcceptStation": "到達[山東_濰坊運轉中心]",
"AcceptTime": "2020-02-23 14:48:34"
}, {
"AcceptStation": "離開[山東_濰坊運轉中心] 發往 [山東_淄博分撥站]",
"AcceptTime": "2020-02-25 00:11:46"
}, {
"AcceptStation": "到達[山東_淄博分撥站]",
"AcceptTime": "2020-02-25 06:44:43"
}, {
"AcceptStation": "離開[山東_淄博分撥站] 發往 [山東_淄博分撥站_周村區A點]",
"AcceptTime": "2020-02-26 18:42:51"
}, {
"AcceptStation": "離開 [山東_淄博分撥站_周村區A點] 派送中,遞送員[房進],電話[15065853111]。全民戰疫,“非接觸派送服務”請聯系快遞員",
"AcceptTime": "2020-02-27 10:14:07"
}, {
"AcceptStation": "客戶已簽收 簽收人:鄭玉潔",
"AcceptTime": "2020-02-27 20:22:46"
}],
"State": "3",
"EBusinessID": "1264783",
"Success": true
}
這里根據我們的實際業務需求來選擇免費套餐或者收費套餐。
實名認證和免費套餐申請的方法在愛奇藝視頻教程里有詳細說明。
愛奇藝視頻教程:
https://www.iqiyi.com/v_19rxcwtwk0.html
附上詳細的接口文檔給大家:
http://www.kdniao.com/documents
提供源碼下載:
https://download.csdn.net/download/yanghanwen/12139326
調用第三方物流接口,替換自己的key就能直接使用,主要實現了物流在線軌跡查詢,訂單訂閱,軌跡推送,支持上百家家的快遞查詢接口,包括主流的四通一達,支持上門取件服務,其他接口調用,修改調用指令和參數就能實現。
源碼運行演示截圖: