亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

詳解C# WebApi 接口測試工具:WebApiTestClient

2019-10-29 19:59:38
字體:
來源:轉載
供稿:網友

前言:這兩天在整WebApi的服務,由于調用方是Android客戶端,Android開發人員也不懂C#語法,API里面的接口也不能直接給他們看,沒辦法,只有整個詳細一點的文檔唄。由于接口個數有點多,每個接口都要詳細說明接口作用、參數類型、返回值類型等等,寫著寫著把博主惹毛了,難道這種文檔非要自己寫不成?難道網上沒有這種文檔的展示工具嗎?帶著這兩個問題,在網絡世界里尋找,網絡世界很奇妙,只要你用心,總能找到或多或少的幫助!這不就被博主找到了這個好用的組件:WebApiTestClient。它對于接口的作用、參數作用以及類型、返回值說明等等都能很好展現,并且提供測試調用的功能,輸入測試參數發送請求,就能得到相應的返回結果。哇塞,這一系列可視化的效果不正是博主需要的嗎,還寫什么文檔,趕緊用起來!

一、WebApiTestClient介紹

1、WebApiTestClient組件作用主要有以下幾個:

(1)、將WebApi的接口放到了瀏覽器里面,以可視化的方式展現出來,比如我們通過http://localhost:8080/Help這個地址就能在瀏覽器里面看到這個服務里面所有的API接口以及接口的詳細說明,省去了我們手寫接口文檔的麻煩。

(2)、能夠詳細查看API的類說明、方法說明、參數說明、返回值說明。只需要我們在定義方法時候加上/// <summary>這種詳細注釋即可,組件自動讀取注釋里面的內容展現在界面上面。

(3)、可以修改http請求頭文件Head和請求體Body里面的參數,指定發送http請求的特性,比如指定我們最常見的contentType指示參數的類型。

(4)、組件擁有測試接口的功能,用過Soup UI的朋友應該知道,通過Soup UI能夠方便測試WebService參數以及返回值。我們的WebApiTestClient也可以實現類似的功能,直接通過頁面上的測試按鈕,就能測試接口。

2、WebApiTestClient是一個開源組件。開源地址:https://github.com/yaohuang/WebApiTestClient

二、WebApiTestClient展示

第一印象:接口列表。

C#,WebApi,接口測試工具,WebApiTestClient

點擊某一個接口查看接口詳細。例如本文查看Get請求的無參方法,右下角有按鈕可以測試接口。

C#,WebApi,接口測試工具,WebApiTestClient

點擊“Test API”按鈕

C#,WebApi,接口測試工具,WebApiTestClient

點擊Send發送請求

C#,WebApi,接口測試工具,WebApiTestClient

第二個有參數的接口

C#,WebApi,接口測試工具,WebApiTestClient

手動輸入參數,得到返回結果

C#,WebApi,接口測試工具,WebApiTestClient

如果參數的類型是對象,可以直接解析class定義上面的/// <summary>標注,顯示如下

C#,WebApi,接口測試工具,WebApiTestClient

由于是post請求,如果需要執行參數長度和類型,可以通過content-length和content-type來指定。并且具體的參數可以指定不同格式顯示,比如下圖的application/json和application/xml

C#,WebApi,接口測試工具,WebApiTestClient

C#,WebApi,接口測試工具,WebApiTestClient

得到返回值

C#,WebApi,接口測試工具,WebApiTestClient

三、WebApiTestClient使用

1、如何引入組件

首先,我們需要定義一個API項目

C#,WebApi,接口測試工具,WebApiTestClient

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

C#,WebApi,接口測試工具,WebApiTestClient

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

  1. Scripts/WebApiTestClient.js
  2. Areas/HelpPage/TestClient.css
  3. Areas/HelpPage/Views/Help/DisplayTemplates/TestClientDialogs.cshtml
  4. Areas/HelpPage/Views/Help/DisplayTemplates/TestClientReferences.cshtml

2、如何使用組件

1、修改Api.cshtml文件

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

  1. @Html.DisplayForModel("TestClientDialogs")
  2. @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="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路徑

其實,通過上面的步驟,我們的項目已經可以跑起來了,也可以調用接口測試。但是,還不能讀取/// <summary>注釋里面的東西。需要做如下配置才行。

(1)配置生成xml的路徑。我們在項目上面點右鍵→屬性→生成標簽頁配置xml的路徑

C#,WebApi,接口測試工具,WebApiTestClient

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

C#,WebApi,接口測試工具,WebApiTestClient

這句代碼如下:

 

復制代碼代碼如下:
config.SetDocumentationProvider(new XmlDocumentationProvider(HttpContext.Current.Server.MapPath("~/App_Data/WebApiTestClient.XML")));

 

3、測試接口

/// <summary>  /// 測試API Test Client  /// </summary>  public class TestChargingDataController : ApiController  {    /// <summary>    /// 得到所有數據    /// </summary>    /// <returns>返回數據</returns>    [HttpGet]    public string GetAllChargingData()    {      return "ChargingData";    }    /// <summary>    /// 得到當前Id的所有數據    /// </summary>    /// <param name="id">參數Id</param>    /// <returns>返回數據</returns>    [HttpGet]    public string GetAllChargingData(string id)    {      return "ChargingData" + id ;    }    /// <summary>    /// Post提交    /// </summary>    /// <param name="oData">對象</param>    /// <returns>提交是否成功</returns>    [HttpPost]    public bool Post(TB_CHARGING oData)    {      return true;    }    /// <summary>    /// Put請求    /// </summary>    /// <param name="oData">對象</param>    /// <returns>提交是否成功</returns>    [HttpPut]    public bool Put(TB_CHARGING oData)    {      return true;    }    /// <summary>    /// delete操作    /// </summary>    /// <param name="id">對象id</param>    /// <returns>操作是否成功</returns>    [HttpDelete]    public bool Delete(string id)    {      return true;    }  }  /// <summary>  /// 充電對象實體  /// </summary>  public class TB_CHARGING  {    /// <summary>    /// 主鍵Id    /// </summary>    public string ID { get; set; }    /// <summary>    /// 充電設備名稱    /// </summary>    public string NAME { get; set; }    /// <summary>    /// 充電設備描述    /// </summary>    public string DES { get; set; }    /// <summary>    /// 創建時間    /// </summary>    public DateTime CREATETIME { get; set; }  }

至此,組件就搭完了,剩下的就是運行了。我們在url里面敲地址http://localhost:8080/Help/Index或者http://localhost:8080/Help就能得到上述效果。還不趕緊試試~~

四、總結

上面簡單總結了下WebApiTestClient的使用,如果你的WebApi也是一個單獨的服務,可以整起來當幫助文檔用,省得你自己寫。哈哈,不要謝我,請叫我紅領巾。歡迎推薦。Demo下載 密碼: u13g

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产主播精品在线| 91亚洲精品久久久| 国产精品人成电影| 一本大道亚洲视频| 日韩中文字幕国产精品| 亚洲一品av免费观看| 欧美xxxx14xxxxx性爽| 午夜精品久久久久久久99黑人| 在线视频中文亚洲| 国产精品丝袜久久久久久高清| 三级精品视频久久久久| 国产精品高清网站| 中文字幕欧美视频在线| 一区二区三区久久精品| 国产欧亚日韩视频| 国产成人在线亚洲欧美| 日韩美女在线播放| 91亚洲va在线va天堂va国| 精品国产31久久久久久| 欧美日韩中文字幕| 日韩精品视频三区| 欧美中文在线免费| 日韩在线免费av| 日韩乱码在线视频| 91亚洲人电影| 欧美日韩在线看| 久久国产精品免费视频| 欧美成人中文字幕在线| 精品亚洲一区二区三区在线观看| 97香蕉超级碰碰久久免费的优势| 国产美女直播视频一区| 欧美日产国产成人免费图片| 8x海外华人永久免费日韩内陆视频| 九九久久综合网站| 精品视频一区在线视频| 欧美在线视频免费观看| 日韩男女性生活视频| 国产中文欧美精品| 狠狠躁天天躁日日躁欧美| 国产精品高潮呻吟久久av黑人| 欧美在线一区二区视频| 久久精品国产99国产精品澳门| 国产精品国产三级国产专播精品人| 国产精品v片在线观看不卡| 国产女人精品视频| 亚洲一区第一页| 国产成人精品视频在线观看| 精品中文字幕乱| 久久天天躁狠狠躁夜夜av| 亚洲aⅴ日韩av电影在线观看| 亚洲国产精品久久精品怡红院| 欧美成人在线网站| 国产一区二区三区久久精品| 久久免费在线观看| 亚洲免费人成在线视频观看| 日韩一区在线视频| 日韩精品中文字| 黑人巨大精品欧美一区二区三区| 久久久久久网站| 亚洲人成人99网站| 亚洲免费高清视频| 久久人人爽人人爽人人片av高清| 在线视频免费一区二区| 久久青草精品视频免费观看| 狠狠色狠色综合曰曰| 少妇久久久久久| 欧美黑人又粗大| 性金发美女69hd大尺寸| 欧美亚洲在线视频| 亚洲精品丝袜日韩| 国产精品99一区| 欧美日韩国产专区| 亚洲精品电影在线观看| 成人福利视频在线观看| 国产欧美日韩精品在线观看| 在线播放国产一区中文字幕剧情欧美| 欧美激情性做爰免费视频| 日韩av电影中文字幕| 国产亚洲精品久久久久久牛牛| 久久精品福利视频| 国产自产女人91一区在线观看| 高潮白浆女日韩av免费看| 日本欧美中文字幕| 日韩精品在线免费| 91夜夜未满十八勿入爽爽影院| 欧美成人免费全部观看天天性色| 98精品国产高清在线xxxx天堂| 欧美激情亚洲一区| 国产精品视频专区| 久久精品国产久精国产一老狼| 色哟哟网站入口亚洲精品| 欧美日韩在线视频一区| 亚洲少妇中文在线| 97精品久久久中文字幕免费| 性欧美长视频免费观看不卡| 国产激情视频一区| 成人国产精品免费视频| 性欧美亚洲xxxx乳在线观看| 国产福利精品视频| 午夜伦理精品一区| 亚洲精品免费av| 亚洲国产精品久久91精品| 欧美黄色成人网| 国产美女久久精品香蕉69| 中文字幕亚洲国产| 日韩影视在线观看| 亚洲国内高清视频| 欧美电影免费在线观看| www.亚洲成人| 国产xxx69麻豆国语对白| 亚洲精品成人久久| 日韩亚洲成人av在线| 亚洲精品视频在线观看视频| 久久精品视频亚洲| 日本精品久久久久影院| 久久亚洲国产精品| 自拍偷拍亚洲区| 国产成人综合一区二区三区| 欧美二区乱c黑人| 国产日韩精品入口| 成人在线免费观看视视频| 奇米一区二区三区四区久久| 亚洲精品aⅴ中文字幕乱码| 成人h视频在线观看播放| 久久91精品国产| 国产精品视频资源| 日本免费在线精品| 韩国视频理论视频久久| 日韩成人av网| 91精品国产电影| 国产大片精品免费永久看nba| 国产午夜精品视频免费不卡69堂| 2019最新中文字幕| 国产精品一区二区av影院萌芽| 黑人巨大精品欧美一区二区一视频| 国产69精品久久久久久| 亚洲天堂第二页| 亚洲中国色老太| 亚洲欧美日韩精品久久| 91美女高潮出水| 日韩经典一区二区三区| 成人午夜在线观看| 国产精品精品视频一区二区三区| 亚洲欧美日韩国产精品| 国产精品成人国产乱一区| 色与欲影视天天看综合网| 色在人av网站天堂精品| 全色精品综合影院| 亚洲视频在线观看免费| 91夜夜揉人人捏人人添红杏| 欧美一区二区三区免费观看| 欧美一级片免费在线| 中文日韩电影网站| 国产一区二区三区中文| 国产成人精品久久二区二区91| 2024亚洲男人天堂| 孩xxxx性bbbb欧美| 2019中文字幕在线观看| 亚洲精品美女在线观看播放| 韩国精品久久久999| 亚洲国产精彩中文乱码av| 亚洲第一在线视频| 亚洲成人精品视频在线观看| 欧美亚洲国产视频小说|