日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#进阶系列——WebApi 接口测试工具:WebApiTestClient

發(fā)布時(shí)間:2024/9/20 C# 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#进阶系列——WebApi 接口测试工具:WebApiTestClient 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

正文

前言:這兩天在整WebApi的服務(wù),由于調(diào)用方是Android客戶端,Android開發(fā)人員也不懂C#語法,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é)果。哇塞,這一系列可視化的效果不正是博主需要的嗎,還寫什么文檔,趕緊用起來!

WebApi系列文章

  • C#進(jìn)階系列——WebApi接口測(cè)試工具:WebApiTestClient
  • C#進(jìn)階系列——WebApi 跨域問題解決方案:CORS
  • C#進(jìn)階系列——WebApi身份認(rèn)證解決方案:Basic基礎(chǔ)認(rèn)證
  • C#進(jìn)階系列——WebApi接口傳參不再困惑:傳參詳解
  • C#進(jìn)階系列——WebApi接口返回值不困惑:返回值類型詳解
  • C#進(jìn)階系列——WebApi異常處理解決方案
  • C#進(jìn)階系列——WebApi區(qū)域Area使用小結(jié)
回到頂部

一、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)類似的功能,直接通過頁面上的測(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ù)長度和類型,可以通過content-length和content-type來指定。并且具體的參數(shù)可以指定不同格式顯示,比如下圖的application/json和application/xml

得到返回值

回到頂部

三、WebApiTestClient使用

回到頂部

1、如何引入組件

首先,我們需要定義一個(gè)API項(xiàng)目

然后通過Nuget引入組件,如下圖。記住選下圖中的第三個(gè)。

引入成功后,將向項(xiàng)目里面添加一些主要文件:

  • Scripts\WebApiTestClient.js
  • Areas\HelpPage\TestClient.css
  • Areas\HelpPage\Views\Help\DisplayTemplates\TestClientDialogs.cshtml
  • Areas\HelpPage\Views\Help\DisplayTemplates\TestClientReferences.cshtml
回到頂部

2、如何使用組件

?1、修改Api.cshtml文件

通過上述步驟,就能將組件WebAPITestClient引入進(jìn)來。下面我們只需要做一件事:打開文件 (根據(jù) Areas\HelpPage\Views\Help) Api.cshtml 并添加以下內(nèi)容:

  • @Html.DisplayForModel("TestClientDialogs")
  • @Html.DisplayForModel("TestClientReferences")

添加后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="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="stylesheet" />@Html.DisplayForModel("TestClientReferences") }

2、配置讀取注釋的xml路徑

其實(shí),通過上面的步驟,我們的項(xiàng)目已經(jīng)可以跑起來了,也可以調(diào)用接口測(cè)試。但是,還不能讀取?///?<summary>?注釋里面的東西。需要做如下配置才行。

(1)配置生成xml的路徑。我們?cè)陧?xiàng)目上面點(diǎn)右鍵→屬性→生成標(biāo)簽頁配置xml的路徑

(2)在xml的讀取路徑:在下圖的HelpPageConfig.cs里面配置一句話,指定xml的讀取路徑。

這句代碼如下:

config.SetDocumentationProvider(new XmlDocumentationProvider(HttpContext.Current.Server.MapPath("~/App_Data/WebApiTestClient.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é)了下WebApiTestClient的使用,如果你的WebApi也是一個(gè)單獨(dú)的服務(wù),可以整起來當(dāng)幫助文檔用,省得你自己寫。哈哈,不要謝我,請(qǐng)叫我紅領(lǐng)巾。歡迎推薦。Demo下載

http://www.cnblogs.com/landeanfen/p/5210356.html

總結(jié)

以上是生活随笔為你收集整理的C#进阶系列——WebApi 接口测试工具:WebApiTestClient的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久亚洲AV无码 | 调教一区 | 欧美日韩国产精品 | 一区二区三区波多野结衣 | a级片免费在线观看 | 素人av在线 | 国产乱码一区二区三区 | 亚洲综合成人网 | 在线观看a级片 | 久久久久人妻一区精品色欧美 | 九色自拍视频 | 久久久综合久久久 | 国产中文一区二区三区 | 色婷婷久久综合中文久久蜜桃av | 禁漫天堂在线 | 成年人黄色在线观看 | 六月丁香激情网 | 8050午夜一级毛片久久亚洲欧 | 91av在线播放 | 日韩成人av在线播放 | 久久久高清免费视频 | 日韩经典在线观看 | 亚洲调教 | 国产精品12p| 中文字幕精品一区久久久久 | 不卡一区二区在线观看 | 少妇无码一区二区三区 | 久久超级碰碰 | 天天爽夜夜操 | 小嫩女直喷白浆 | 精品一区二区在线免费观看 | 久久亚洲精品中文字幕 | 国产成人亚洲精品自产在线 | www黄色 | 91成人免费看片 | 狠狠操在线 | 国产色婷婷 | 久久综合九色综合欧美狠狠 | 女人又爽又黄免费女仆 | 色呦呦网站 | 影音先锋一区 | 国产精品ww | 草久久免费视频 | 欧美亚洲综合网 | 精品国产18久久久久久二百 | 日本一区视频在线观看 | 国产精品天天干 | 波多野结衣小视频 | 性做久久| 国产真人无码作爱视频免费 | 久久夜靖品2区 | 欧美日韩性生活 | 三级a毛片| 久久久观看 | 超碰久操 | 日韩欧美色图 | 爱爱免费小视频 | 亚洲精品不卡 | 熟女丰满老熟女熟妇 | 偷自在线 | 丝袜脚交国产在线观看 | 亚洲三级图片 | 99在线播放| 欧美一区欧美二区 | 日本精品一区二区三区四区 | 黑料av在线 | 久久久国际精品 | 免费精品一区二区 | 清纯唯美亚洲激情 | 蜜桃91麻豆精品一二三区 | 91精品国产乱码久久 | 9l视频自拍九色9l视频成人 | 久色99| 蜜臀av免费在线观看 | 久久免费视屏 | 国产精品久久久久久久久岛 | 亚洲xxxxxx| 最好看的mv中文字幕国语电影 | 亚洲精品在线观看网站 | 欧美第一精品 | 在线看日韩av | 欧美一区二区高清视频 | 美女啪啪免费视频 | 亚洲三级国产 | 黄色一级片av | 欧美与黑人午夜性猛交久久久 | 麻豆最新网址 | 日本吃奶摸下激烈网站动漫 | 一级免费黄色大片 | 狠狠躁18三区二区一区视频 | 亚洲精品香蕉 | 天天干天天搞天天射 | 欧洲综合色 | 亚洲免费在线视频 | 久久精品国产免费看久久精品 | 99久久精品免费看国产免费软件 | 免费看黄视频的网站 | 18我禁在线观看 | 久久国产成人精品 |