優速快遞查詢
調用快遞鳥提供的快遞查詢API标準接口,快速對接100多家快遞公司的物流軌迹查詢,本篇文章實作<優速快遞>的快遞單号查詢。
首先我們準備好需要用到的資源,
這裡推薦大家去愛奇藝檢視視訊教程:
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,快遞鳥官網要求必須傳遞快遞公司編碼和物流單号 ,優速快遞的編碼是UC
如要檢視其他快遞公司的編碼,點選此連結:
http://www.kdniao.com/documents
我們用真實單号(900752733683)來完成軌迹接口調用,
請求 JSON
{\'OrderCode\':\'\',\'ShipperCode\':UC,\'LogisticCode\':\' 900752733683\'}
請求的完整封包(URL編碼以後):
RequestData=%0d%0a++++++++++++%7b%27OrderCode%27%3a%27%27%2c%27ShipperCode%27%3a%27UC%27%2c%27LogisticCode%27%3a%27900752733683%27%7d%0d%0a++++++++&EBusinessID=1264783&RequestType=1002&DataSign=YzlhZDZmMTNkYWY5M2MxZTIxOTQ1MmUwMWRmZDdlNjc%3d&DataType=2
未編碼的請求封包:
{\'OrderCode\':\'\',\'ShipperCode\':\'UC\',\'LogisticCode\':\'900752733683\'} &EBusinessID=1264783&RequestType=1002&DataSign=YzlhZDZmMTNkYWY5M2MxZTIxOTQ1MmUwMWRmZDdlNjc=&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": "900752733683",
"ShipperCode": "UC",
"Traces": [{
"AcceptStation": "[徐州十八部]【建華包裝】已收件",
"AcceptTime": "2020-02-24 15:54:36"
}, {
"AcceptStation": "快件已到達[徐州快遞分撥],上一站是[徐州十八部]",
"AcceptTime": "2020-02-24 18:25:55"
}, {
"AcceptStation": "快件已由[徐州快遞分撥]發往[無錫快遞分撥]",
"AcceptTime": "2020-02-24 18:27:14"
}, {
"AcceptStation": "快件已到達[無錫快遞分撥],上一站是[徐州快遞分撥]",
"AcceptTime": "2020-02-25 03:32:27"
}, {
"AcceptStation": "快件已由[無錫快遞分撥]發往[泰州快遞分撥]",
"AcceptTime": "2020-02-25 03:34:40"
}, {
"AcceptStation": "快件已到達[泰州快遞分撥],上一站是[無錫快遞分撥]",
"AcceptTime": "2020-02-25 08:29:43"
}, {
"AcceptStation": "快件已由[泰州快遞分撥]發往[姜堰六部]",
"AcceptTime": "2020-02-25 08:31:16"
}, {
"AcceptStation": "快件已到達[姜堰六部],上一站是[泰州快遞分撥]",
"AcceptTime": "2020-02-27 09:55:54"
}, {
"AcceptStation": "[姜堰六部]的【周國兵】正在派件, 電話:15996068855。小哥今日體溫正常,将佩戴口罩為您服務,也可以聯系小哥将您的包裹放到指定點,祝您身體健康!",
"AcceptTime": "2020-02-27 10:04:37"
}, {
"AcceptStation": "快件已本人簽收",
"AcceptTime": "2020-02-27 14:46:31"
}],
"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就能直接使用,主要實作了物流線上軌迹查詢,訂單訂閱,軌迹推送,支援上百家家的快遞查詢接口,包括主流的四通一達,支援上門取件服務,其他接口調用,修改調用指令和參數就能實作。
示範截圖:
