韻達快遞 單號查詢介面開發

2021-10-04 20:23:23 字數 3399 閱讀 3054

今天我們來聊如何利用快遞鳥提供的介面來查詢韻達快遞的物流軌跡。

講解之前我們來看一下,介面完成以後的實際顯示效果

以下是產品應用截圖,呼叫快遞鳥介面獲得的軌跡資訊:

實際上快遞鳥返回的報文資訊會更詳細,在給客戶展示的資訊可根據產品需要來封裝返回軌跡資訊。

現在我們來聊一聊具體實現!

首先我們準備好需要用到的資源,

測試商戶id:

test1617571

測試api key:

554343b2-7252-439b-b4eb-1af42c8f2175(此key僅限測試環境使用)

我以c#開發為例來講解

請求系統級引數說明:

備註:r-必填(required),o-可選(optional),c-報文中該引數在一定條件下可選(conditional)

這裡提到了系統級引數,也相當於是公用引數,這些引數是呼叫每個介面都是必須要傳參的。

介面引數:

介面引數,也叫業務引數,請求的業務介面不同,引數的字段,內容也不同,是跟著業務變化的,這裡我們實現的是即時查詢介面,請求指令型別:1002,快遞鳥官網要求必須傳遞快遞公司編碼和物流單號 ,圓通快遞的編碼是yd

正如我前面的軌跡截圖,韻達快遞的編碼是yd,物流單號是4602132422443

業務引數報文組合如下:

請求的完整報文(url編碼以後):

requestdata=%0d%0a++++++++++++%7b%27ordercode%27%3a%27%27%2c%27shippercode%27%3a%27yd%27%2c%27logisticcode%27%3a%274602132422443%27%7d%0d%0a++++++++&ebusinessid=1617571&requesttype=1002&datasign=nte2nzqzodkwnde3mzcxzdrhnddmmtizmdg0mgzkoda%3d&datatype=2

未編碼的請求報文:

requestdata=

&ebusinessid=1617571&requesttype=1002&datasign=nte2nzqzodkwnde3mzcxzdrhnddmmtizmdg0mgzkoda=&datatype=2

返回的報文資訊:

``

`csharp ,

,,,,

,,,,

],"state"

:"3"

,"ebusinessid"

:"1264783"

,"success"

:true

}

c#關鍵**:

/// 

/// 即時查詢物流軌跡

///

///

/// test1617571

///

///

public

string

getordertracesbyjson

(string url,

string ebusinessid,

string requestdata)

///

/// post方式提交資料,返回網頁的源**

///

/// 傳送請求的 url

/// 請求的引數集合

/// 遠端資源的響應結果

private

string

sendpost

(string url, dictionary<

string

,string

> param)

postdata.

(p.key)

; postdata.

("=");

postdata.

(p.value);}

}// return postdata.tostring();

byte

bytedata = encoding.

getencoding

("utf-8").

getbytes

(postdata.

tostring()

);trycatch

(exception ex)

return result;

}/////

/電商sign簽名

///<

/summary>//

/"content"

>內容<

/param>//

/"keyvalue"

/param>//

/"charset"

>url編碼 <

/param>//

/datasign簽名<

/returns>

private

string

encrypt

(string content,

string keyvalue,

string charset)

return

base64

(md5

(content, charset)

, charset);}

/////

/ 字串md5加密

///<

/summary>//

/"str"

>要加密的字串<

/param>//

/"charset"

>編碼方式<

/param>//

/密文<

/returns>

private

string

md5(

string str,

string charset)

return ret.

tolower()

;}catch}/

////

/ base64編碼

///<

/summary>//

/"str"

>內容<

/param>//

/"charset"

>編碼方式<

/param>//

/<

/returns>

private

string

base64

(string str,

string charset)

附上詳細的介面文件給大家:

全國快遞物流查詢 快遞單號查詢介面api

電商,erp廠商可能需要物流資訊介面,對運單號的物流軌跡進行跟蹤,通常有些免費的不好用,及時性要求達不到,收費的也太貴了。最近發現乙個免費的api介面,及時性非常高,基本上就是實時返回。快遞查詢介面 物流跟蹤介面 是快遞鳥為使用者提供的定製化服務,使用者可將訂單資訊通過快遞鳥訂閱給快遞公司,快遞公司...

郵政國內標快 快遞單號查詢 快遞鳥API介面

呼叫快遞鳥提供的快遞查詢api標準介面,快速對接100多家快遞公司的物流軌跡查詢,本篇文章實現 郵政國內標快 的快遞單號查詢。首先我們準備好需要用到的資源,測試商戶id test1617571 測試api key 554343b2 7252 439b b4eb 1af42c8f2175 此key僅限...

前端模擬京東快遞單號查詢

請輸入您的快遞單號 class jd div var con document.queryselector con var jd input document.queryselector jd jd input.addeventlistener keyup function else jd inpu...