這篇文章主要介紹“怎么使用C#的API接口 ”,在日常操作中,相信很多人在怎么使用C#的API接口 問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么使用C#的API接口 ”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
創(chuàng)新互聯(lián)公司:公司2013年成立為各行業(yè)開拓出企業(yè)自己的“網(wǎng)站建設(shè)”服務(wù),為近千家公司企業(yè)提供了專業(yè)的網(wǎng)站建設(shè)、做網(wǎng)站、網(wǎng)頁設(shè)計和網(wǎng)站推廣服務(wù), 定制網(wǎng)站建設(shè)由設(shè)計師親自精心設(shè)計,設(shè)計的效果完全按照客戶的要求,并適當(dāng)?shù)奶岢龊侠淼慕ㄗh,擁有的視覺效果,策劃師分析客戶的同行競爭對手,根據(jù)客戶的實際情況給出合理的網(wǎng)站構(gòu)架,制作客戶同行業(yè)具有領(lǐng)先地位的。
1.1,去快遞鳥官網(wǎng)免費(fèi)注冊一個賬號
1.2,免費(fèi)獲得一個apiKey(接口權(quán)限驗證需要)
1.3,完成實名認(rèn)證流程
1.4,訂購一個免費(fèi)套餐
2.1,測試調(diào)用地址:http://sandboxapi.kdniao.com:8080/kdniaosandbox/gateway/exterfaceInvoke.json
2.2,正式調(diào)用地址: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,調(diào)試頁面:http://kdniao.com/UserCenter/v2/SandBox/TrackQuery.aspx
2.7,調(diào)試工具:去調(diào)試(使用快遞鳥賬號登錄)
參數(shù)名稱 | 類型 | 說明 | 必須要求 |
---|---|---|---|
RequestData | String | 請求內(nèi)容需進(jìn)行URL(utf-8)編碼。請求內(nèi)容JSON格式,須和DataType一致。 | R |
EBusinessID | String | 商戶ID,請在我的服務(wù)頁面查看。 | R |
RequestType | String | 請求指令類型:2002 | R |
DataSign | String | 數(shù)據(jù)內(nèi)容簽名:把(請求內(nèi)容(未編碼)+AppKey)進(jìn)行MD5加密,然后Base64編碼,最后 進(jìn)行URL(utf-8)編碼。詳細(xì)過程請查看Demo。 | R |
DataType | String | 請求、返回數(shù)據(jù)類型:只支持JSON格式 | R |
參數(shù)名稱 | 類型 | 說明 | 是否必須 | |
---|---|---|---|---|
LogisticCode | String | 物流單號 | R |
參數(shù)名稱 | 類型 | 說明 | 必須要求 | |
---|---|---|---|---|
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": "韻達(dá)快遞" } ] }
8.1,請求數(shù)據(jù)包結(jié)構(gòu)
8.2,C#調(diào)用代碼示例
//電商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)進(jìn)行MD5加密 string md5Str=MD5(jsonStr + apiKey, charset); //把md5Str 進(jìn)行Base64編碼 string base64Str=base64(md5Str,charset); //進(jìn)行URL編碼 (utf-8) string datasign = HttpUtility.UrlEncode(base64Str, charset); //請求報文參數(shù) string postStr = "RequestType=reqType&EBusinessID= eEBusinessID&RequestData=jsonStr &DataSign= datasign&DataType=dataType"; //通訊協(xié)議使用Http協(xié)議Post請求方式 返回軌跡數(shù)據(jù) string post = SendPost(reqURL, postStr); //獲取到的post數(shù)據(jù)就是快遞鳥返回的完整報文,接下來自己寫一個解析json的方法就能獲取到里面的字段信息。
8.3,C#調(diào)用方法
///<summary> /// 字符串MD5加密 ///</summary> ///<param name="str">要加密的字符串</param> ///<param name="charset">編碼方式</param> ///<returns>密文</returns> private string MD5(string str, string
快遞鳥和第三方電子商務(wù)公司系統(tǒng)進(jìn)行對接,有一定的安全機(jī)制。采用 IP 認(rèn)證加簽名
的方式對接,具體方案如下:
防止數(shù)據(jù)被篡改 在 POST 請求中會傳遞 5 個必須(R)參數(shù) RequestData==數(shù)據(jù)內(nèi)容(URL 編碼:UTF-8) EBusinessID==用戶 ID RequestType=請求指令類型 DataSign== 數(shù)據(jù)內(nèi)容簽名:把(請求內(nèi)容(未編碼)+ApiKey)進(jìn)行 MD5 加密,然后 Base64 編碼,最后進(jìn)行 URL(utf-8)編碼 DataType==2(返回數(shù)據(jù)類型為 json) 注: DataSign 生成后,對方接收到數(shù)據(jù)后,以同樣的算法進(jìn)行簽名(推送接口 RequestType 為 101/102 不需要進(jìn)行 URL 編碼),生成摘要,對比兩者的摘要是否相同,如果不同,說明傳遞過程中發(fā)生數(shù)據(jù)篡改。 調(diào)用接口的身份認(rèn)證 注冊成為快遞鳥用戶后,會生成對應(yīng)的用戶 ID 和 APIKey,用戶 ID 相當(dāng)于用戶名, APIKey 相當(dāng)于密碼。
到此,關(guān)于“怎么使用C#的API接口 ”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
分享標(biāo)題:怎么使用C#的API接口
路徑分享:http://aaarwkj.com/article14/gjgide.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站制作、手機(jī)網(wǎng)站建設(shè)、用戶體驗、外貿(mào)建站、小程序開發(fā)、Google
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)