您好,登錄后才能下訂單哦!
這篇文章主要介紹“怎么使用C#的API接口 ”,在日常操作中,相信很多人在怎么使用C#的API接口 問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么使用C#的API接口 ”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
1.1,去快遞鳥官網免費注冊一個賬號
1.2,免費獲得一個apiKey(接口權限驗證需要)
1.3,完成實名認證流程
1.4,訂購一個免費套餐
2.1,測試調用地址:http://sandboxapi.kdniao.com:8080/kdniaosandbox/gateway/exterfaceInvoke.json
2.2,正式調用地址:http://api.kdniao.com/api/dist
2.3,請求方式:POST
2.4,編碼格式(utf-8):application/x-www-form-urlencoded;charset=utf-8
2.5,返回類型:JSON
2.6,調試頁面:http://kdniao.com/UserCenter/v2/SandBox/TrackQuery.aspx
2.7,調試工具:去調試(使用快遞鳥賬號登錄)
參數名稱 | 類型 | 說明 | 必須要求 |
---|---|---|---|
RequestData | String | 請求內容需進行URL(utf-8)編碼。請求內容JSON格式,須和DataType一致。 | R |
EBusinessID | String | 商戶ID,請在我的服務頁面查看。 | R |
RequestType | String | 請求指令類型:2002 | R |
DataSign | String | 數據內容簽名:把(請求內容(未編碼)+AppKey)進行MD5加密,然后Base64編碼,最后 進行URL(utf-8)編碼。詳細過程請查看Demo。 | R |
DataType | String | 請求、返回數據類型:只支持JSON格式 | R |
參數名稱 | 類型 | 說明 | 是否必須 | |
---|---|---|---|---|
LogisticCode | String | 物流單號 | R |
參數名稱 | 類型 | 說明 | 必須要求 | |
---|---|---|---|---|
EBusinessID | String | 電商用戶ID | R | |
LogisticCode | String | 物流單號 | R | |
Success | Bool | 成功與否 | R | |
Code | Int | 失敗原因 | O | |
Shipper | ShipperCode | String | 快遞公司編碼 | O |
ShipperName | String | 快遞公司名稱 | O |
{ "LogisticCode": "3967950525457" }
{ "EBusinessID": "1257021", "Success": true, "LogisticCode": "3967950525457", "Shippers": [ { "ShipperCode": "YD", "ShipperName": "韻達快遞" } ] }
8.1,請求數據包結構
8.2,C#調用代碼示例
//電商ID string eEBusinessID = "test1617571"; //電商加密私鑰,快遞鳥提供,注意保管,不要泄漏 string appKey= "554343b2-7252-439b-b4eb-1af42c8f2175"; //請求url string reqURL = "http://sandboxapi.kdniao.com:8080/kdniaosandbox/gateway/exterfaceInvoke.json"; //請求指令 string reqType="2002"; //2-json string dataType = "2"; //字符編碼采用UTF-8 string charset = "UTF-8"; //JSON字符串string string jsonStr = "{\"LogisticCode\":\"JT0000052600488\"}" ; //把(jsonStr+APIKey)進行MD5加密 string md5Str=MD5(jsonStr + apiKey, charset); //把md5Str 進行Base64編碼 string base64Str=base64(md5Str,charset); //進行URL編碼 (utf-8) string datasign = HttpUtility.UrlEncode(base64Str, charset); //請求報文參數 string postStr = "RequestType=reqType&EBusinessID= eEBusinessID&RequestData=jsonStr &DataSign= datasign&DataType=dataType"; //通訊協議使用Http協議Post請求方式 返回軌跡數據 string post = SendPost(reqURL, postStr); //獲取到的post數據就是快遞鳥返回的完整報文,接下來自己寫一個解析json的方法就能獲取到里面的字段信息。
8.3,C#調用方法
///<summary> /// 字符串MD5加密 ///</summary> ///<param name="str">要加密的字符串</param> ///<param name="charset">編碼方式</param> ///<returns>密文</returns> private string MD5(string str, string
快遞鳥和第三方電子商務公司系統進行對接,有一定的安全機制。采用 IP 認證加簽名
的方式對接,具體方案如下:
防止數據被篡改 在 POST 請求中會傳遞 5 個必須(R)參數 RequestData==數據內容(URL 編碼:UTF-8) EBusinessID==用戶 ID RequestType=請求指令類型 DataSign== 數據內容簽名:把(請求內容(未編碼)+ApiKey)進行 MD5 加密,然后 Base64 編碼,最后進行 URL(utf-8)編碼 DataType==2(返回數據類型為 json) 注: DataSign 生成后,對方接收到數據后,以同樣的算法進行簽名(推送接口 RequestType 為 101/102 不需要進行 URL 編碼),生成摘要,對比兩者的摘要是否相同,如果不同,說明傳遞過程中發生數據篡改。 調用接口的身份認證 注冊成為快遞鳥用戶后,會生成對應的用戶 ID 和 APIKey,用戶 ID 相當于用戶名, APIKey 相當于密碼。
到此,關于“怎么使用C#的API接口 ”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。