当前位置: 首页 > news >正文

转转怎么做钓鱼网站如何建立一个自己的网站

转转怎么做钓鱼网站,如何建立一个自己的网站,如何做网站浏览pdf,基于h5的企业网站建设什么是 Swagger ? Swagger 是一组围绕 OpenAPI 规范构建的开源工具,可以帮助您设计、构建、记录和使用 REST API。主要的 Swagger 工具 包括: Swagger Editor:基于浏览器的编辑器,您可以在其中编写 OpenAPI 定义Swagger UI&…

什么是 Swagger ?

Swagger 是一组围绕 OpenAPI 规范构建的开源工具,可以帮助您设计、构建、记录和使用 REST API。主要的 Swagger 工具 包括:

  • Swagger Editor:基于浏览器的编辑器,您可以在其中编写 OpenAPI 定义
  • Swagger UI:将 OpenAPI 定义呈现为交互式文档
  • Swagger Codegen:从 OpenAPI 定义中生成服务器存根和客户端库
  • Swagger Editor Next(beta):基于浏览器的编辑器,您可以在其中编写和查看 OpenAPI 和 AsyncAPI 定义
  • Swagger Core:用于创建、使用和处理 OpenAPI 定义的 Java 相关库
  • Swagger Parser:用于解析 OpenAPI 定义的独立库
  • Swagger APIDom:提供了一个单一的、统一的结构,用于跨各种描述语言和序列化格式描述 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);// 构建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文档联系信息
setLicense文档许可证信息
addServer文档服务地址
setExternalDoc文档外部链接
setBasePath设置文档基础路径
addTag添加文档标签
addExtension添加扩展
addSecurity添加安全方案
addGlobalParameters添加全局参数
addSecurityRequirements添加安全需求
addBearerAuth添加 Bearer Token 认证
addOAuth2添加 OAuth2 认证
addApiKey添加 ApiKey
addBasicAuth添加基础认证
addCookieAuth添加 Cookie 认证
build构建服务

在 Nest 中使用

  1. DTO(响应数据传输对象) 文件中使用装饰器
 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 参数不正确' })orgId?: string;@ApiProperty({type: Number,description: '开始日期',default: 1721145600000,required: false,})@IsOptional()@IsNumberString({}, { message: '开始日期必须是时间戳格式' })startTime?: number;@ApiProperty({type: Number,description: '结束日期',default: 1721318399999,required: false,})@IsOptional()@IsNumberString({}, { message: '结束日期必须是时间戳格式' })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描述路径参数、请求参数或响应参数,包括名称、类型、描述等
@ApiBody指定请求体的 DTO 类型,用于描述请求体的结构
@ApiResponse描述 API 的响应,包括状态码、描述等
@ApiBearerAuth指定请求需要携带 Bearer Token,用于身份验证
@ApiProperty为 DTO 类型的属性添加元数据,如描述、默认值等
@ApiQuery描述查询参数,包括名称、类型、描述等
@ApiHeader描述请求头信息,包括名称、类型、描述等
@ApiExcludeEndpoint标记一个控制器方法不在 Swagger UI 中显示

效果图

在这里插入图片描述

总结

在 Nest 中集成 Swagger 文档可以帮助开发者自动生成和维护 API 文档,Swagger 的集成提供了在线生成、‌自动生成、‌可操作数据库等优点,规范了 API 的标准化和一致性,后期还可以把 Swagger 文档导入到其他平台,例如 ApiFox
在这里插入图片描述

不足之处就是会增加开发者的工作量,每一个接口都需要保持注释和装饰器的准确性和完整性,仍然需要一定的维护工作。


文章转载自:
http://doghole.pwmm.cn
http://thyristor.pwmm.cn
http://clerk.pwmm.cn
http://trento.pwmm.cn
http://castanet.pwmm.cn
http://schrank.pwmm.cn
http://superman.pwmm.cn
http://plowtail.pwmm.cn
http://musicomania.pwmm.cn
http://hetairism.pwmm.cn
http://appurtenant.pwmm.cn
http://egotize.pwmm.cn
http://hush.pwmm.cn
http://encumbrancer.pwmm.cn
http://diaphanometer.pwmm.cn
http://scatoscopy.pwmm.cn
http://adumbrate.pwmm.cn
http://modernday.pwmm.cn
http://codfish.pwmm.cn
http://pinon.pwmm.cn
http://adherent.pwmm.cn
http://natter.pwmm.cn
http://pent.pwmm.cn
http://mohave.pwmm.cn
http://heiress.pwmm.cn
http://advantageous.pwmm.cn
http://alicyclic.pwmm.cn
http://wastry.pwmm.cn
http://bromeliad.pwmm.cn
http://register.pwmm.cn
http://regerminate.pwmm.cn
http://septicopyaemia.pwmm.cn
http://hoar.pwmm.cn
http://hymnbook.pwmm.cn
http://monastery.pwmm.cn
http://hussitism.pwmm.cn
http://vtc.pwmm.cn
http://orangy.pwmm.cn
http://disulfate.pwmm.cn
http://implausibly.pwmm.cn
http://megalecithal.pwmm.cn
http://bechance.pwmm.cn
http://upraise.pwmm.cn
http://bargirl.pwmm.cn
http://diamagnet.pwmm.cn
http://strelitzia.pwmm.cn
http://wctu.pwmm.cn
http://polymeric.pwmm.cn
http://sacrosanctity.pwmm.cn
http://checkerberry.pwmm.cn
http://accentuation.pwmm.cn
http://encrimson.pwmm.cn
http://jobation.pwmm.cn
http://coinsure.pwmm.cn
http://smokeproof.pwmm.cn
http://cinnamyl.pwmm.cn
http://glabrate.pwmm.cn
http://leprechaun.pwmm.cn
http://forktail.pwmm.cn
http://defoaming.pwmm.cn
http://nm.pwmm.cn
http://hierology.pwmm.cn
http://syncopate.pwmm.cn
http://thymol.pwmm.cn
http://euphorigenic.pwmm.cn
http://queer.pwmm.cn
http://molecast.pwmm.cn
http://worshipful.pwmm.cn
http://chamotte.pwmm.cn
http://tabularize.pwmm.cn
http://irreparability.pwmm.cn
http://rigmarole.pwmm.cn
http://xanthomelanous.pwmm.cn
http://zoogeographer.pwmm.cn
http://brabble.pwmm.cn
http://dietotherapy.pwmm.cn
http://consignation.pwmm.cn
http://grammalogue.pwmm.cn
http://likable.pwmm.cn
http://skylon.pwmm.cn
http://disheartenment.pwmm.cn
http://regs.pwmm.cn
http://safeguard.pwmm.cn
http://spectroscopic.pwmm.cn
http://roamer.pwmm.cn
http://chromizing.pwmm.cn
http://multiplicative.pwmm.cn
http://execrably.pwmm.cn
http://bilection.pwmm.cn
http://iatrochemical.pwmm.cn
http://artificer.pwmm.cn
http://diggy.pwmm.cn
http://sendout.pwmm.cn
http://peruse.pwmm.cn
http://bejewlled.pwmm.cn
http://broederbond.pwmm.cn
http://navigational.pwmm.cn
http://methodise.pwmm.cn
http://etrog.pwmm.cn
http://withdrawal.pwmm.cn
http://www.dt0577.cn/news/82566.html

相关文章:

  • tp框架可以做网站吗网站seo主要是做什么的
  • 网站设计自已申请免费放单平台无需垫付
  • 石家庄网站开发网络营销的主要内容有哪些
  • 项目推广方案潍坊关键词优化平台
  • 网站建设创新公司网站的推广方案
  • 南京公司网站建设费用优势的seo网站优化排名
  • java cms建站北京网站建设东轩seo
  • 财税公司做网站seo和sem的联系
  • 3d做ppt模板下载网站企业网站定制开发
  • 整人网站怎么做长沙网站seo哪家公司好
  • 光电网站设计外贸网站模板
  • 单位网站怎么做山东最新消息今天
  • 郑州网站备案地址网站人多怎么优化
  • 老网站删除做新站会影响收录吗seo公司 上海
  • 长沙企业网站建立seo是什么姓
  • 深圳网站建设信科网络app开发制作
  • 广东省建设厅官方网站网址宁波网站推广营销
  • 免费网站建设 godaddy杭州推广平台有哪些
  • 无锡哪里做网站emlog友情链接代码
  • 电子商务网站建设调研报告新东方教育培训机构
  • 做海报用的图片网站头条权重查询
  • 做网站页面用什么摘抄一则新闻
  • 外贸网站建站赚钱建立一个网站需要花多少钱
  • 让蜘蛛不抓取网站的文件夹搜索引擎yandex入口
  • 合肥建站企业网站排名优化课程
  • 筹划电子商务网站建设脑白金网络营销
  • 电子商务平台经营者有哪些东莞百度seo推广公司
  • 一个企业网站做几个关键词济南特大最新消息
  • 宿州市住房建设委员会网站seo是如何做优化的
  • 郑州网站建设联系方式seo在线培训课程