最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Node.js自動(dòng)生成API文檔的實(shí)現(xiàn)

 更新時(shí)間:2024年03月05日 09:47:12   作者:王果凍ddd  
本文主要介紹了Node.js自動(dòng)生成API文檔,包含基于swagger-jsdoc+swagger-ui-express快速實(shí)現(xiàn),具有一定的參考價(jià)值,感興趣的可以了解一下

如何在Node.js項(xiàng)目中使用 Swagger 來自動(dòng)生成 API接口文檔,使用生成方式有很多種。本文基于swagger-jsdoc+swagger-ui-express快速實(shí)現(xiàn)

1、直接使用swagger-ui-express

// 方便來瀏覽和測(cè)試api
npm i swagger-ui-express
import { Express } from 'express';
import swaggerUi from 'swagger-ui-express';
const options = {
  openapi: "3.0.3",
      info: {
      title: '文檔相關(guān)接口',
      version: '1.0.0',
      description: 'API documentation using Swagger',
  },
  tags: [{
    name: "develop",
    description: "開發(fā)者站點(diǎn)管理接口",
  }],
  paths: {
    "/develop": {
      "get": {
      "tags": ["develop"],
      "description": "獲取文檔列表!",
          "responses": {
            "200": {
              "description":"返回字符串?dāng)?shù)組"
            }
          }
      }
    }
  }
}
const swaggerInstall = (app: Express) => {
  app.use(
    '/apidoc',
    swaggerUi.serve,
    swaggerUi.setup(options)
  );
};
export { swaggerInstall };

image.png

直接使用配置去生成接口文檔,更改接口的時(shí)候需要同時(shí)去更改配置,會(huì)相對(duì)麻煩點(diǎn)。這時(shí)候就可以使用swagger-jsdoc,通過在接口上面注釋信息后,就可以自動(dòng)更新對(duì)應(yīng)的api接口文檔,其本質(zhì)是通過讀取該接口對(duì)應(yīng)的注釋,然后再轉(zhuǎn)成對(duì)應(yīng)的配置。

2、配合swagger-jsdoc

  • JSDoc 注釋是一種特殊的注釋語法,用于為 JavaScript 代碼添加文檔化和類型提示信息。它是基于 JSDoc 規(guī)范的一部分,旨在提供一種標(biāo)準(zhǔn)的方式來描述代碼的結(jié)構(gòu)、功能和類型信息

  • 作用:接口文檔注釋有更新,對(duì)應(yīng)的api文檔會(huì)同步更新。確保接口變更,配置會(huì)同時(shí)去更改

npm i swagger-jsdoc
import { Express } from 'express';
import path from 'path';
import swaggerDoc from 'swagger-jsdoc';
import swaggerUi from 'swagger-ui-express';

const swaggerOptions = {
  swaggerDefinition: {
    info: {
      title: '文檔相關(guān)接口',
      version: '1.0.0',
      description: 'API documentation using Swagger',
    },
  },
  apis: [path.join(__dirname, './routes/*.ts')], // 指定包含 API 路由的文件或文件夾路徑
};
const swaggerInstall = (app: Express) => {
  app.use(
    '/apidoc',
    swaggerUi.serve,
    swaggerUi.setup(swaggerDoc(swaggerOptions))
  );
};
export { swaggerInstall };
//在對(duì)應(yīng)的接口,注釋對(duì)應(yīng)的文檔
import express from 'express';
import {
  developGetFile,
  developGetFileList,
} from '../controllers/developControllers';
const router = express.Router();
/**
 * @openapi
 * /develop:
 *   get:
 *     tags: [develop]
 *     description: 獲取文檔列表!
 *     responses:
 *       200:
 *         description: 返回字符串?dāng)?shù)組.
 */
router.get('/', developGetFileList);

到此這篇關(guān)于Node.js自動(dòng)生成API文檔的文章就介紹到這了,更多相關(guān)Node.js自動(dòng)生成API內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • node.js多個(gè)異步過程中判斷執(zhí)行是否完成的解決方案

    node.js多個(gè)異步過程中判斷執(zhí)行是否完成的解決方案

    這篇文章主要給大家介紹了關(guān)于node.js多個(gè)異步過程中判斷執(zhí)行是否完成的幾種解決方案,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。
    2017-12-12
  • 修改Nodejs內(nèi)置的npm默認(rèn)配置路徑方法

    修改Nodejs內(nèi)置的npm默認(rèn)配置路徑方法

    今天小編就為大家分享一篇修改Nodejs內(nèi)置的npm默認(rèn)配置路徑方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-05-05
  • 安裝nvm實(shí)現(xiàn)切換node

    安裝nvm實(shí)現(xiàn)切換node

    這篇文章主要介紹了安裝nvm實(shí)現(xiàn)切換node的詳細(xì)過程,本文給大家講解的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2024-06-06
  • 從零開始學(xué)習(xí)Node.js系列教程四:多頁面實(shí)現(xiàn)數(shù)學(xué)運(yùn)算的client端和server端示例

    從零開始學(xué)習(xí)Node.js系列教程四:多頁面實(shí)現(xiàn)數(shù)學(xué)運(yùn)算的client端和server端示例

    這篇文章主要介紹了Node.js多頁面實(shí)現(xiàn)數(shù)學(xué)運(yùn)算的client端和server端,結(jié)合具體實(shí)例形式分析了nodejs客戶端提交與服務(wù)端處理實(shí)現(xiàn)數(shù)學(xué)運(yùn)算的相關(guān)操作技巧,需要的朋友可以參考下
    2017-04-04
  • Node.js 異步編程之 Callback介紹(一)

    Node.js 異步編程之 Callback介紹(一)

    這篇文章主要介紹了Node.js 異步編程之 Callback介紹(一),本文用實(shí)例講解Callback的相關(guān)知識(shí),本文是第一篇,下一篇小編會(huì)跟進(jìn),需要的朋友可以參考下
    2015-03-03
  • 輕松創(chuàng)建nodejs服務(wù)器(5):事件處理程序

    輕松創(chuàng)建nodejs服務(wù)器(5):事件處理程序

    這篇文章主要介紹了輕松創(chuàng)建nodejs服務(wù)器(5):事件處理程序,本系列文章將一步一步創(chuàng)建一個(gè)完整的nodejs服務(wù)器,需要的朋友可以參考下
    2014-12-12
  • 使用Node.js實(shí)現(xiàn)RESTful API的示例

    使用Node.js實(shí)現(xiàn)RESTful API的示例

    Node.js可以用很少代碼簡(jiǎn)單地實(shí)現(xiàn)一個(gè)Web服務(wù),并且它有一個(gè)非?;钴S的社區(qū),通過Node出色的包管理機(jī)制(NPM)可以非常容易獲得各種擴(kuò)展支持。 對(duì)簡(jiǎn)單的應(yīng)用場(chǎng)景Node.js實(shí)現(xiàn)REST是一個(gè)非常合適的選擇。 本文介紹如何用Node.js實(shí)現(xiàn)REST服務(wù)。
    2017-08-08
  • 使用Node.js為其他程序編寫擴(kuò)展的基本方法

    使用Node.js為其他程序編寫擴(kuò)展的基本方法

    這篇文章主要介紹了使用Node.js為其他程序編寫擴(kuò)展的基本方法 ,文中示例是通過Node讓JavaScript代碼與C++應(yīng)用產(chǎn)生交互,需要的朋友可以參考下
    2015-06-06
  • 使用Node實(shí)現(xiàn)Git倉庫批量克隆的操作步驟

    使用Node實(shí)現(xiàn)Git倉庫批量克隆的操作步驟

    分享一個(gè)node腳本,通過調(diào)用gitee的OpenApi獲取自己的代碼倉庫列表,達(dá)到批量克隆項(xiàng)目的效果,文中通過代碼示例和圖文講解的非常詳細(xì),感興趣的小伙伴可以參考閱讀一下
    2024-04-04
  • node.js文件系統(tǒng)之文件寫入實(shí)例詳解

    node.js文件系統(tǒng)之文件寫入實(shí)例詳解

    Node.js和其他語言一樣,也有文件操作,下面這篇文章主要給大家介紹了關(guān)于node.js文件系統(tǒng)之文件寫入的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03

最新評(píng)論

招远市| 曲阳县| 洞头县| 曲阳县| 绥江县| 诸暨市| 泸州市| 道孚县| 迁安市| 太康县| 扶绥县| 塘沽区| 古丈县| 芒康县| 双江| 高碑店市| 沧州市| 沈阳市| 屏东县| 钟山县| 西华县| 宣化县| 贡嘎县| 无棣县| 资兴市| 石门县| 香河县| 修文县| 开封县| 察哈| 赞皇县| 苍梧县| 伊川县| 微博| 九寨沟县| 木兰县| 凌云县| 兴隆县| 田阳县| 敖汉旗| 习水县|