<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
        

      C#進階系列——WebApi 接口測試工具:WebApiTestClient

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

      WebApi系列文章

      一、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展示

      第一印象:接口列表。 

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

      點擊“Test API”按鈕

      點擊Send發送請求

      第二個有參數的接口

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

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

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

      得到返回值

      三、WebApiTestClient使用

      1、如何引入組件

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

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

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

      • 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引入進來。下面我們只需要做一件事:打開文件 (根據 Areas\HelpPage\Views\Help) Api.cshtml 并添加以下內容:

      • @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路徑

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

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

       

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

      這句代碼如下:

      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下載

       

      posted @ 2016-02-24 16:15  懶得安分  閱讀(94452)  評論(85)    收藏  舉報
      主站蜘蛛池模板: 国产一区二区三区色老头| 国产一区二区四区不卡| 国产成人精品1024免费下载| 久久综合偷拍视频五月天| 一本色道国产在线观看二区 | 婷婷色爱区综合五月激情韩国| 无码av波多野结衣| 中文字幕精品人妻丝袜| 国产精品va无码一区二区| 国产成人8X人网站视频| 国产乱人伦无无码视频试看| 亚洲精品久荜中文字幕| 国产色一区二区三区四区| 中文字幕一区日韩精品| 日韩精品有码中文字幕| 无码国产精品一区二区av| 在线观看成人年视频免费| 靖边县| 久久精品国产亚洲av高| 亚洲男人综合久久综合天堂| 九九热在线视频观看这里只有精品| 日本一区不卡高清更新二区| 日韩人妻不卡一区二区三区| 日本阿v片在线播放免费| 亚洲精品乱码久久久久红杏| 蜜桃av无码免费看永久| 国产精品一区二区三区黄色| 91青青草视频在线观看的| 97成人碰碰久久人人超级碰oo| 亚洲AV高清一区二区三区尤物| 免费看欧美全黄成人片| 熟女视频一区二区在线观看| 国产日韩精品欧美一区灰| 国产日韩一区二区天美麻豆| 国产尤物精品自在拍视频首页| 一本精品99久久精品77| 亚洲少妇人妻无码视频| 欧美成人VA免费大片视频| 竹山县| 国产免费又黄又爽又色毛| 国产在线精品中文字幕|