中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

轉(zhuǎn)轉(zhuǎn)怎么做釣魚網(wǎng)站素材網(wǎng)

轉(zhuǎn)轉(zhuǎn)怎么做釣魚網(wǎng)站,素材網(wǎng),wordpress編輯器字體,地震網(wǎng)最新消息今天什么是 Swagger ? Swagger 是一組圍繞 OpenAPI 規(guī)范構(gòu)建的開源工具,可以幫助您設計、構(gòu)建、記錄和使用 REST API。主要的 Swagger 工具 包括: Swagger Editor:基于瀏覽器的編輯器,您可以在其中編寫 OpenAPI 定義Swagger UI&…

什么是 Swagger ?

Swagger 是一組圍繞 OpenAPI 規(guī)范構(gòu)建的開源工具,可以幫助您設計、構(gòu)建、記錄和使用 REST API。主要的 Swagger 工具 包括:

  • Swagger Editor:基于瀏覽器的編輯器,您可以在其中編寫 OpenAPI 定義
  • Swagger UI:將 OpenAPI 定義呈現(xiàn)為交互式文檔
  • Swagger Codegen:從 OpenAPI 定義中生成服務器存根和客戶端庫
  • Swagger Editor Next(beta):基于瀏覽器的編輯器,您可以在其中編寫和查看 OpenAPI 和 AsyncAPI 定義
  • Swagger Core:用于創(chuàng)建、使用和處理 OpenAPI 定義的 Java 相關庫
  • Swagger Parser:用于解析 OpenAPI 定義的獨立庫
  • Swagger APIDom:提供了一個單一的、統(tǒng)一的結(jié)構(gòu),用于跨各種描述語言和序列化格式描述 API

Nest 集成 Swagger

  1. 安裝依賴
pnpm add @nestjs/swagger swagger-ui-express
  1. main.ts 文件中定義并初始化 SwaggerModule
 import { NestFactory } from '@nestjs/core';import { DocumentBuilder, SwaggerModule } from '@nestjs/swagger';import { AppModule } from './app.module';async function bootstrap() {const app = await NestFactory.create(AppModule);// 構(gòu)建swagger文檔const options = new DocumentBuilder().setTitle('vue3-admin').setDescription('Background system based on Nest.js + Vue3 full stack development').setVersion('1.0').build();const document = SwaggerModule.createDocument(app, options);SwaggerModule.setup('docs', app, document);await app.listen(3000);}bootstrap();
  1. 啟動服務,訪問http://localhost:3000/docs,你會看到 Swagger 頁面:
    在這里插入圖片描述

DocumentBuilder 屬性

方法描述
setTitle文檔標題
setDescription文檔描述
setVersion文檔版本
setTermsOfService文檔服務條款
setContact文檔聯(lián)系信息
setLicense文檔許可證信息
addServer文檔服務地址
setExternalDoc文檔外部鏈接
setBasePath設置文檔基礎路徑
addTag添加文檔標簽
addExtension添加擴展
addSecurity添加安全方案
addGlobalParameters添加全局參數(shù)
addSecurityRequirements添加安全需求
addBearerAuth添加 Bearer Token 認證
addOAuth2添加 OAuth2 認證
addApiKey添加 ApiKey
addBasicAuth添加基礎認證
addCookieAuth添加 Cookie 認證
build構(gòu)建服務

在 Nest 中使用

  1. DTO(響應數(shù)據(jù)傳輸對象) 文件中使用裝飾器
 import { ApiProperty } from '@nestjs/swagger';import { IsNumberString, IsOptional, IsUUID } from 'class-validator';export class PostParamsDto {@ApiProperty({type: String,description: '崗位名稱',required: false,default: '前端工程師',})name?: string;@ApiProperty({type: String,description: '所屬組織',default: 'f45cd48b-e703-49db-91be-ae7f594e73e0',required: false,})@IsOptional()@IsUUID('all', { message: 'orgId 參數(shù)不正確' })orgId?: string;@ApiProperty({type: Number,description: '開始日期',default: 1721145600000,required: false,})@IsOptional()@IsNumberString({}, { message: '開始日期必須是時間戳格式' })startTime?: number;@ApiProperty({type: Number,description: '結(jié)束日期',default: 1721318399999,required: false,})@IsOptional()@IsNumberString({}, { message: '結(jié)束日期必須是時間戳格式' })endTime?: number;}
  1. Controller 控制器 中使用裝飾器
import { Controller, Get, Query } from '@nestjs/common';
import { ApiOkResponse, ApiOperation, ApiTags } from '@nestjs/swagger'; // swagger 接口文檔import { PostParamsDto } from './dto/params-post.dto';
import { ResponsePostDto } from './dto/response-post.dto';
import { PostManageService } from './post-manage.service';@ApiTags('智能行政-崗位管理')
@Controller('post-manage')
export class PostManageController {constructor(private readonly postManageService: PostManageService) { }/*** @description: 查詢崗位列表*/@Get()@ApiOkResponse({ type: ResponsePostDto })@ApiOperation({ summary: '獲取崗位管理列表' })findAll(@Query() params: PostParamsDto) {return this.postManageService.findAll(params);}
}

常用 Swagger 裝飾器

裝飾器描述
@ApiTags為控制器或方法添加標簽,用于組織 Swagger UI 文檔
@ApiOperation為控制器方法添加操作描述,包括摘要和詳細描述
@ApiParam描述路徑參數(shù)、請求參數(shù)或響應參數(shù),包括名稱、類型、描述等
@ApiBody指定請求體的 DTO 類型,用于描述請求體的結(jié)構(gòu)
@ApiResponse描述 API 的響應,包括狀態(tài)碼、描述等
@ApiBearerAuth指定請求需要攜帶 Bearer Token,用于身份驗證
@ApiProperty為 DTO 類型的屬性添加元數(shù)據(jù),如描述、默認值等
@ApiQuery描述查詢參數(shù),包括名稱、類型、描述等
@ApiHeader描述請求頭信息,包括名稱、類型、描述等
@ApiExcludeEndpoint標記一個控制器方法不在 Swagger UI 中顯示

效果圖

在這里插入圖片描述

總結(jié)

在 Nest 中集成 Swagger 文檔可以幫助開發(fā)者自動生成和維護 API 文檔,Swagger 的集成提供了在線生成、?自動生成、?可操作數(shù)據(jù)庫等優(yōu)點,規(guī)范了 API 的標準化和一致性,后期還可以把 Swagger 文檔導入到其他平臺,例如 ApiFox
在這里插入圖片描述

不足之處就是會增加開發(fā)者的工作量,每一個接口都需要保持注釋和裝飾器的準確性和完整性,仍然需要一定的維護工作。

http://www.risenshineclean.com/news/47568.html

相關文章:

  • 梁山城鄉(xiāng)建設局網(wǎng)站網(wǎng)絡輿情分析
  • 產(chǎn)品展示網(wǎng)站模板東莞市網(wǎng)站seo內(nèi)容優(yōu)化
  • wordpress主題插件seo工程師
  • wordpress加一個字段seo外鏈推廣
  • 杭州的網(wǎng)站建設靜態(tài)網(wǎng)站開發(fā)
  • 廣州商城建網(wǎng)站渠道搜索排名優(yōu)化軟件
  • ecshop網(wǎng)站模板手機優(yōu)化大師
  • 做100個網(wǎng)站關鍵詞優(yōu)化軟件有哪些
  • 魔方網(wǎng)站建設網(wǎng)站制作網(wǎng)站關鍵詞優(yōu)化報價
  • 現(xiàn)在建網(wǎng)站seo關鍵詞優(yōu)化排名外包
  • 商城網(wǎng)站建設經(jīng)驗seo工具軟件
  • 網(wǎng)站建設第一步怎么弄win7優(yōu)化大師官網(wǎng)
  • 深圳網(wǎng)站建設制作公司排名國際新聞頭條
  • 衢州市住房建設局 網(wǎng)站網(wǎng)站制作哪家公司好
  • 廊坊網(wǎng)站制作套餐廈門人才網(wǎng)唯一官網(wǎng)招聘
  • 淘寶網(wǎng)站那個做的百度明星人氣榜
  • ppt做書模板下載網(wǎng)站有哪些百度關鍵詞分析工具
  • 轉(zhuǎn)運公司網(wǎng)站建設服務推廣軟文
  • 微信微博網(wǎng)站建設英文外鏈代發(fā)
  • 長沙百度開戶seo常見優(yōu)化技術
  • 公司網(wǎng)站搜索不到外鏈怎么打開
  • 國外網(wǎng)購網(wǎng)站seo優(yōu)化服務
  • 大型免費網(wǎng)站制作網(wǎng)絡優(yōu)化主要做什么
  • 藍科企業(yè)網(wǎng)站系統(tǒng)b2b多平臺一鍵發(fā)布
  • 網(wǎng)站的欄目設置進入百度app查看
  • 專業(yè)鄭州做網(wǎng)站的公司2023最近的新聞大事10條
  • 家具網(wǎng)站的建設北京網(wǎng)站優(yōu)化技術
  • it初學者做網(wǎng)站最近的新聞有哪些
  • 鹽津鋪子網(wǎng)絡營銷推廣方法搜索引擎優(yōu)化seo論文
  • 怎樣建網(wǎng)站步驟奶茶店推廣軟文500字