前言:這兩天在整WebApi的服務(wù),由于調(diào)用方是Android客戶端,Android開發(fā)人員也不懂C#語(yǔ)法,API里面的接口也不能直接給他們看,沒辦法,只有整個(gè)詳細(xì)一點(diǎn)的文檔唄。由于接口個(gè)數(shù)有點(diǎn)多,每個(gè)接口都要詳細(xì)說明接口作用、參數(shù)類型、返回值類型等等,寫著寫著把博主惹毛了,難道這種文檔非要自己寫不成?難道網(wǎng)上沒有這種文檔的展示工具嗎?帶著這兩個(gè)問題,在網(wǎng)絡(luò)世界里尋找,網(wǎng)絡(luò)世界很奇妙,只要你用心,總能找到或多或少的幫助!這不就被博主找到了這個(gè)好用的組件:WebApiTestClient。它對(duì)于接口的作用、參數(shù)作用以及類型、返回值說明等等都能很好展現(xiàn),并且提供測(cè)試調(diào)用的功能,輸入測(cè)試參數(shù)發(fā)送請(qǐng)求,就能得到相應(yīng)的返回結(jié)果。哇塞,這一系列可視化的效果不正是博主需要的嗎,還寫什么文檔,趕緊用起來!
創(chuàng)新互聯(lián)公司于2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站制作、網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元遼陽(yáng)做網(wǎng)站,已為上家服務(wù),為遼陽(yáng)各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:028-86922220
一、WebApiTestClient介紹
1、WebApiTestClient組件作用主要有以下幾個(gè):
(1)、將WebApi的接口放到了瀏覽器里面,以可視化的方式展現(xiàn)出來,比如我們通過http://localhost:8080/Help這個(gè)地址就能在瀏覽器里面看到這個(gè)服務(wù)里面所有的API接口以及接口的詳細(xì)說明,省去了我們手寫接口文檔的麻煩。
(2)、能夠詳細(xì)查看API的類說明、方法說明、參數(shù)說明、返回值說明。只需要我們?cè)诙x方法時(shí)候加上/// <summary>這種詳細(xì)注釋即可,組件自動(dòng)讀取注釋里面的內(nèi)容展現(xiàn)在界面上面。
(3)、可以修改http請(qǐng)求頭文件Head和請(qǐng)求體Body里面的參數(shù),指定發(fā)送http請(qǐng)求的特性,比如指定我們最常見的contentType指示參數(shù)的類型。
(4)、組件擁有測(cè)試接口的功能,用過Soup UI的朋友應(yīng)該知道,通過Soup UI能夠方便測(cè)試WebService參數(shù)以及返回值。我們的WebApiTestClient也可以實(shí)現(xiàn)類似的功能,直接通過頁(yè)面上的測(cè)試按鈕,就能測(cè)試接口。
2、WebApiTestClient是一個(gè)開源組件。開源地址:https://github.com/yaohuang/WebApiTestClient
二、WebApiTestClient展示
第一印象:接口列表。
點(diǎn)擊某一個(gè)接口查看接口詳細(xì)。例如本文查看Get請(qǐng)求的無參方法,右下角有按鈕可以測(cè)試接口。
點(diǎn)擊“Test API”按鈕
點(diǎn)擊Send發(fā)送請(qǐng)求
第二個(gè)有參數(shù)的接口
手動(dòng)輸入?yún)?shù),得到返回結(jié)果
如果參數(shù)的類型是對(duì)象,可以直接解析class定義上面的/// <summary>標(biāo)注,顯示如下
由于是post請(qǐng)求,如果需要執(zhí)行參數(shù)長(zhǎng)度和類型,可以通過content-length和content-type來指定。并且具體的參數(shù)可以指定不同格式顯示,比如下圖的application/json和application/xml
得到返回值
三、WebApiTestClient使用
1、如何引入組件
首先,我們需要定義一個(gè)API項(xiàng)目
然后通過Nuget引入組件,如下圖。記住選下圖中的第三個(gè)。
引入成功后,將向項(xiàng)目里面添加一些主要文件:
2、如何使用組件
1、修改Api.cshtml文件
通過上述步驟,就能將組件WebAPITestClient引入進(jìn)來。下面我們只需要做一件事:打開文件 (根據(jù) Areas\HelpPage\Views\Help) Api.cshtml 并添加以下內(nèi)容:
添加后Api.cshtml文件的代碼如下
@using System.Web.Http @using WebApiTestClient.Areas.HelpPage.Models @model HelpPageApiModel @{ var description = Model.ApiDescription; ViewBag.Title = description.HttpMethod.Method + " " + description.RelativePath; } <link type="text/css" href="~/Areas/HelpPage/HelpPage.css" rel="external nofollow" rel="external nofollow" rel="stylesheet" /> <div id="body" class="help-page"> <section class="featured"> <div class="content-wrapper"> <p> @Html.ActionLink("Help Page Home", "Index") </p> </div> </section> <section class="content-wrapper main-content clear-fix"> @Html.DisplayForModel() </section> </div> @Html.DisplayForModel("TestClientDialogs") @section Scripts{ <link href="~/Areas/HelpPage/HelpPage.css" rel="external nofollow" rel="external nofollow" rel="stylesheet" /> @Html.DisplayForModel("TestClientReferences") }
2、配置讀取注釋的xml路徑
其實(shí),通過上面的步驟,我們的項(xiàng)目已經(jīng)可以跑起來了,也可以調(diào)用接口測(cè)試。但是,還不能讀取/// <summary>注釋里面的東西。需要做如下配置才行。
(1)配置生成xml的路徑。我們?cè)陧?xiàng)目上面點(diǎn)右鍵→屬性→生成標(biāo)簽頁(yè)配置xml的路徑
(2)在xml的讀取路徑:在下圖的HelpPageConfig.cs里面配置一句話,指定xml的讀取路徑。
這句代碼如下:
3、測(cè)試接口
/// <summary> /// 測(cè)試API Test Client /// </summary> public class TestChargingDataController : ApiController { /// <summary> /// 得到所有數(shù)據(jù) /// </summary> /// <returns>返回?cái)?shù)據(jù)</returns> [HttpGet] public string GetAllChargingData() { return "ChargingData"; } /// <summary> /// 得到當(dāng)前Id的所有數(shù)據(jù) /// </summary> /// <param name="id">參數(shù)Id</param> /// <returns>返回?cái)?shù)據(jù)</returns> [HttpGet] public string GetAllChargingData(string id) { return "ChargingData" + id ; } /// <summary> /// Post提交 /// </summary> /// <param name="oData">對(duì)象</param> /// <returns>提交是否成功</returns> [HttpPost] public bool Post(TB_CHARGING oData) { return true; } /// <summary> /// Put請(qǐng)求 /// </summary> /// <param name="oData">對(duì)象</param> /// <returns>提交是否成功</returns> [HttpPut] public bool Put(TB_CHARGING oData) { return true; } /// <summary> /// delete操作 /// </summary> /// <param name="id">對(duì)象id</param> /// <returns>操作是否成功</returns> [HttpDelete] public bool Delete(string id) { return true; } } /// <summary> /// 充電對(duì)象實(shí)體 /// </summary> public class TB_CHARGING { /// <summary> /// 主鍵Id /// </summary> public string ID { get; set; } /// <summary> /// 充電設(shè)備名稱 /// </summary> public string NAME { get; set; } /// <summary> /// 充電設(shè)備描述 /// </summary> public string DES { get; set; } /// <summary> /// 創(chuàng)建時(shí)間 /// </summary> public DateTime CREATETIME { get; set; } }
至此,組件就搭完了,剩下的就是運(yùn)行了。我們?cè)趗rl里面敲地址http://localhost:8080/Help/Index或者h(yuǎn)ttp://localhost:8080/Help就能得到上述效果。還不趕緊試試~~
四、總結(jié)
上面簡(jiǎn)單總結(jié)了下WebApiTestClient的使用,如果你的WebApi也是一個(gè)單獨(dú)的服務(wù),可以整起來當(dāng)幫助文檔用,省得你自己寫。哈哈,不要謝我,請(qǐng)叫我紅領(lǐng)巾。歡迎推薦。Demo下載 密碼: u13g
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
網(wǎng)頁(yè)名稱:詳解C#WebApi接口測(cè)試工具:WebApiTestClient
URL網(wǎng)址:http://chinadenli.net/article16/ihjsdg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、自適應(yīng)網(wǎng)站、企業(yè)建站、服務(wù)器托管、網(wǎng)站內(nèi)鏈、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)