api在線文檔使用教程(怎么寫api文檔

      網友投稿 809 2023-01-02

      本篇文章給大家談談api在線文檔使用教程,以及怎么寫api文檔對應的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 今天給各位分享api在線文檔使用教程的知識,其中也會對怎么寫api文檔進行解釋,如果能碰巧解決你現在面臨的問題,別忘了關注本站,現在開始吧!

      本文目錄一覽:

      如何優雅的“編寫”api接口文檔

      一些剛開始寫接口文檔api在線文檔使用教程的服務端同學,很容易按著代碼的思路去編寫接口文檔,這讓客戶端同學或者是服務對接方技術人員經常吐槽,看不懂接口文檔。這篇文章提供一個常規接口文檔的編寫方法,給大家參考。


      推薦使用的是docway?寫接口文檔,方便保存和共享,支持導出PDF MARKDOWN,支持團隊項目管理。

      一、請求參數

      1. 請求方法

      GET

      用于獲取數據

      POST

      用于更新數據,可與PUT互換,語義上PUT支持冪等

      PUT

      用于新增數據,可與POST互換,語義上PUT支持冪等

      DELETE

      用于刪除數據

      api在線文檔使用教程

      api在線文檔使用教程他的請求方法在一般的接口中很少使用。如api在線文檔使用教程:PATCH HEAD OPTIONS

      2. URL

      url表示api在線文檔使用教程了接口的請求路徑。路徑中可以包含參數,稱為地址參數,如**/user/{id}**,其中id作為一個參數。

      3. HTTP Header

      HTTP Header用于此次請求的基礎信息,在接口文檔中以K-V方式展示,其中Content-Type則是一個非常必要的header,它描述的請求體的數據類型。

      常用的content-type:

      application/x-www-form-urlencoded

      請求參數使用“”符號連接。

      application/json

      內容為json格式

      application/xml

      內容為xml格式

      multipart/form-data

      內容為多個數據組成,有分隔符隔開

      4. HTTP Body

      描述http body,依賴于body中具體的數據類型。如果body中的數據是對象類型。則需要描述對象中字段的名稱、類型、長度、不能為空、默認值、說明。以表格的方式來表達最好。

      示例:

      二、響應參數

      1. 響應 HTTP Body

      響應body同請求body一樣,需要描述請清除數據的類型。

      另外,如果服務會根據不同的http status code 返回不同的數據結構, 也需要針對不同的http status code對內容進行描述。

      三、接口說明

      說明接口的應用場景,特別的注意點,比如,接口是否冪等、處理是同步方式還是異步方式等。

      四、示例

      上個示例(重點都用紅筆圈出來,記牢了):

      五、接口工具

      推薦使用的是http://docway.net(以前叫小幺雞) 寫接口文檔,方便保存和共享,支持導出PDF MARKDOWN,支持團隊項目管理。

      如何使 WebAPI 自動生成漂亮又實用在線API文檔

      1.1 SwaggerUI
      SwaggerUI 是一個簡單的Restful API 測試和文檔工具。簡單、漂亮、易用(官方demo)。通過讀取JSON 配置顯示API. 項目本身僅僅也只依賴一些 html,css.js靜態文件. api在線文檔使用教程你可以幾乎放在任何Web容器上使用。
      1.2 Swashbuckle
      Swashbuckle 是.NET類庫,可以將WebAPI所有開放的控制器方法生成對應SwaggerUI的JSON配置。再通過SwaggerUI 顯示出來。類庫中已經包含SwaggerUI 。所以不需要額外安裝。
      2.快速開始
      創建項目 OnlineAPI來封裝百度音樂服務(示例下載) api在線文檔使用教程,通過API可以搜索、獲取音樂的信息和播放連接。
      我盡量刪除一些我們demo中不會用到的一些文件,使其看上去比較簡潔。
      WebAPI 安裝 Swashbuckle
      Install-Package Swashbuckle
      代碼注釋生成文檔說明。
      Swashbuckle 是通過生成的XML文件來讀取注釋的,生成 SwaggerUI,JSON 配置中的說明的。
      安裝時會在項目目錄 App_Start 文件夾下生成一個 SwaggerConfig.cs 配置文件,用于配置 SwaggerUI 相關展示行為的。如圖:
      將配置文件大概99行注釋去掉并修改為
      c.IncludeXmlComments(GetXmlCommentsPath(thisAssembly.GetName().Name));
      并在當前類中添加一個方法
      /// <summary
      /// </summary
      /// <param name="name"</param
      /// <returns</returns
      protected static string GetXmlCommentsPath(string name)
      {
      return string.Format(@"{0}\bin\{1}.XML", AppDomain.CurrentDomain.BaseDirectory, name);
      }
      緊接著你在此Web項目屬性生成選卡中勾選 “XML 文檔文件”,編譯過程中生成類庫的注釋文件
      添加百度音樂 3個API
      訪問 lt;youhost/swagger/ui/index,最終顯示效果
      我們通過API 測試API 是否成功運行
      3.添加自定義HTTP Header
      在開發移動端 API時常常需要驗證權限,驗證參數放在Http請求頭中是再好不過api在線文檔使用教程了。WebAPI配合過濾器驗證權限即可
      首先我們需要創建一個 IOperationFilter 接口的類。IOperationFilter
      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Web;
      using System.Web.Http;
      using System.Web.Http.Description;
      using System.Web.Http.Filters;
      using Swashbuckle.Swagger;
      namespace OnlineAPI.Utility
      {
      public class HttpHeaderFilter : IOperationFilter
      {
      public void Apply(Operation operation, SchemaRegistry
      schemaRegistry, ApiDescription apiDescription)
      {
      if (operation.parameters == null) operation.parameters = new
      List<Parameter();
      var filterPipeline =
      apiDescription.ActionDescriptor.GetFilterPipeline();
      //判斷是否添加權限過濾器
      var isAuthorized = filterPipeline.Select(filterInfo =
      filterInfo.Instance).Any(filter = filter is IAuthorizationFilter);
      //判斷是否允許匿名方法
      var allowAnonymous =
      apiDescription.ActionDescriptor.GetCustomAttributes<AllowAnonymousAttribute().Any();
      if (isAuthorized !allowAnonymous)
      {
      operation.parameters.Add(new Parameter
      {
      name = "access-key",
      @in = "header",
      description = "用戶訪問Key",
      required = false,
      type = "string"
      });
      }
      }
      }
      }
      在 SwaggerConfig.cs 的 EnableSwagger 配置匿名方法類添加一行注冊代碼
      c.OperationFilter<HttpHeaderFilter();
      添加Web權限過濾器
      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Net;
      using System.Net.Http;
      using System.Text;
      using System.Web;
      using System.Web.Http;
      using System.Web.Http.Controllers;
      using Newtonsoft.Json;
      namespace OnlineAPI.Utility
      {
      /// <summary
      ///
      /// </summary
      public class AccessKeyAttribute : AuthorizeAttribute
      {
      /// <summary
      /// 權限驗證
      /// </summary
      /// <param name="actionContext"</param
      /// <returns</returns
      protected override bool IsAuthorized(HttpActionContext actionContext)
      {
      var request = actionContext.Request;
      if (request.Headers.Contains("access-key"))
      {
      var accessKey = request.Headers.GetValues("access-key").SingleOrDefault();
      //TODO 驗證Key
      return accessKey == "123456789";
      }
      return false;
      }
      /// <summary
      /// 處理未授權的請求
      /// </summary
      /// <param name="actionContext"</param
      protected override void HandleUnauthorizedRequest(HttpActionContext actionContext)
      {
      var content = JsonConvert.SerializeObject(new {State = HttpStatusCode.Unauthorized});
      actionContext.Response = new HttpResponseMessage
      {
      Content = new StringContent(content, Encoding.UTF8, "application/json"),
      StatusCode = HttpStatusCode.Unauthorized
      };
      }
      }
      }
      在你想要的ApiController 或者是 Action 添加過濾器
      [AccessKey]
      最終顯示效果
      4.顯示上傳文件參數
      SwaggerUI 有上傳文件的功能和添加自定義HTTP Header 做法類似,只是我們通過特殊的設置來標示API具有上傳文件的功能
      using System;
      using System.Collections.Generic;
      using System.Linq;
      using System.Web;
      using System.Web.Http.Description;
      using Swashbuckle.Swagger;
      namespace OnlineAPI.Utility
      {
      /// <summary
      ///
      /// </summary
      public class UploadFilter : IOperationFilter
      {
      /// <summary
      /// 文件上傳
      /// </summary
      /// <param name="operation"</param
      /// <param name="schemaRegistry"</param
      /// <param name="apiDescription"</param
      public void Apply(Operation operation, SchemaRegistry schemaRegistry, ApiDescription apiDescription)
      {
      if (!string.IsNullOrWhiteSpace(operation.summary) operation.summary.Contains("upload"))
      {
      operation.consumes.Add("application/form-data");
      operation.parameters.Add(new Parameter
      {
      name = "file",
      @in = "formData",
      required = true,
      type = "file"
      });
      }
      }
      }
      }
      在 SwaggerConfig.cs 的 EnableSwagger 配置匿名方法類添加一行注冊代碼
      c.OperationFilter<UploadFilter();
      API 文檔展示效果

      如何使用jdk1.6的API幫助文檔

      1:打開幫助文檔
      2:點擊顯示api在線文檔使用教程,找到索引,看到輸入框
      3:知道api在線文檔使用教程你要找誰?以Scanner舉例
      4:在輸入框里面輸入Scanner,然后回車
      5:看包
      java.lang包下的類不需要導入,其api在線文檔使用教程他的全部需要導入。

      要導入:
      java.util.Scanner
      6:再簡單的看看類的解釋和說明,別忘了看看該類的版本
      7:看類的結構
      成員變量 字段摘要
      構造方法 構造方法摘要
      成員方法 方法摘要
      8:學習構造方法
      A:有構造方法 就創建對象
      B:沒有構造方法 成員可能都是靜態的
      9:看成員方法
      A:左邊
      是否靜態:如果靜態,可以通過類名調用
      返回值類型:人家返回什么,你就用什么接收。
      B:右邊
      看方法名:方法名稱不要寫錯
      參數列表:人家要什么,你就給什么api在線文檔使用教程;人家要幾個,你就給幾個

      java api怎么使用方法?

      這個沒什么使用方法,就是首先你得去找包,在從這個包中找類(接口),然后看這個類得方法已經屬性,從而得到你想要的類得屬性以及方法,自己多差就可以了,只要勤于動什么api都不在話下的!
      你要的QQ可以在HI上叫我我給你

      關于api在線文檔使用教程和怎么寫api文檔的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。 api在線文檔使用教程的介紹就聊到這里吧,感謝你花時間閱讀本站內容,更多關于怎么寫api文檔、api在線文檔使用教程的信息別忘了在本站進行查找喔。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:數據庫管理軟件(windows是數據庫管理軟件)
      下一篇:最佳項目管理軟件(項目管理用什么軟件最好)
      相關文章
      亚洲 欧洲 自拍 另类 校园| 久久久亚洲欧洲日产国码aⅴ | 亚洲视频在线免费播放| 亚洲AV无码久久精品蜜桃| 亚洲中文字幕无码一区二区三区| 亚洲精品视频免费| 亚洲中文无韩国r级电影| 亚洲精品视频久久久| 国产成人精品曰本亚洲79ren| 亚洲av乱码一区二区三区按摩| 亚洲AV无码专区在线观看成人| 亚洲s码欧洲m码吹潮| 日韩欧美亚洲国产精品字幕久久久| 亚洲日本VA中文字幕久久道具| 亚洲精品无码永久在线观看男男| 亚洲一区二区观看播放| 亚洲欧美国产精品专区久久| 亚洲av中文无码字幕色不卡| 亚洲av无码专区在线电影天堂| 国产成人综合亚洲| 亚洲国产av无码精品| 久久亚洲中文字幕精品一区| 亚洲乱码中文字幕久久孕妇黑人| 日韩亚洲一区二区三区| 亚洲成人中文字幕| 亚洲熟妇无码久久精品| 亚洲日日做天天做日日谢| 亚洲日韩国产二区无码| 亚洲Av无码国产情品久久| 亚洲精品国产高清嫩草影院| 伊人久久大香线蕉亚洲| 亚洲AV无码一区二区二三区软件 | 久久精品国产96精品亚洲| 色婷婷亚洲十月十月色天| 中文字幕亚洲色图| 亚洲中文字幕无码av| mm1313亚洲国产精品无码试看| 亚洲精品国产自在久久 | 亚洲人成77777在线播放网站不卡| 亚洲国产精品美女久久久久| 日本亚洲中午字幕乱码|