首页 > 编程语言 >ASP.NET Core 8 Swagger UI 入门使用

ASP.NET Core 8 Swagger UI 入门使用

时间:2024-04-16 09:34:06浏览次数:33  
标签:Core ASP AspNetCore 中间件 UI Swashbuckle Swagger app

介绍

Swashbuckle 有三个主要组成部分:

  • Swashbuckle.AspNetCore.Swagger:将 SwaggerDocument 对象公开为 JSON 终结点的 Swagger 对象模型和中间件。
  • Swashbuckle.AspNetCore.SwaggerGen:从路由、控制器和模型直接生成 SwaggerDocument 对象的 Swagger 生成器。 它通常与 Swagger 终结点中间件结合,以自动公开 Swagger JSON。
  • Swashbuckle.AspNetCore.SwaggerUI:Swagger UI 工具的嵌入式版本。 它解释 Swagger JSON 以构建描述 Web API 功能的可自定义的丰富体验。 它包括针对公共方法的内置测试工具。

Swashbuckle安装

  • 选择要添加Swagger UI 的项目
  • 右键点击管理NuGet程序包,搜索“Swashbuckle.AspNetCore”
  • 找到最新的“Swashbuckle.AspNetCore”包,点击安装即可。

添加并配置 Swagger 中间件

  • ​ 将 Swagger 生成器添加到 Program.cs 中的服务集合:

    var builder = WebApplication.CreateBuilder(args);
    
    // Add services to the container.
    
    builder.Services.AddControllers();
    
    //将Swagger 生成器添加到服务集合中
    builder.Services.AddSwaggerGen();
    
    
  • Program.cs 中,启用中间件为生成的 JSON 文档和 Swagger UI 提供服务:

    var app = builder.Build();
    //仅当前环境设置为“开发”时,上述代码才会添加 Swagger 中间件。 UseSwaggerUI 方法调用会启用 Swagger UI 工具的嵌入版本。
    if (app.Environment.IsDevelopment())
    {
        app.UseSwagger();
        app.UseSwaggerUI();
    }
    
  • 启动应用,并导航到 https://localhost:<port>/swagger/v1/swagger.json。 生成的描述终结点的文档显示在 OpenAPI 规范 (openapi.json) 中。

  • 可在 https://localhost:<port>/swagger 找到 Swagger UI。 通过 Swagger UI 浏览 API,并将其合并其他计划中。

要在应用的根 (https://localhost:<port>/) 处提供 Swagger UI,请将 RoutePrefix 属性设置为空字符串:

app.UseSwaggerUI(options =>
{
    options.SwaggerEndpoint("/swagger/v1/swagger.json", "v1");
    options.RoutePrefix = string.Empty;
});

标签:Core,ASP,AspNetCore,中间件,UI,Swashbuckle,Swagger,app
From: https://www.cnblogs.com/YuYangBlogs/p/18136579

相关文章

  • DruidDataSource的缓存策略
    DruidDataSource的缓存策略主要是用来优化数据库连接池的性能和提高资源利用效率。缓存策略在数据库连接池中扮演着重要角色,通过合理管理数据库连接,减少频繁创建和销毁连接的开销,从而提高应用程序的响应速度和吞吐能力。以下是一些关键点来解释DruidDataSource的缓存策略及其作用......
  • wpf datagrid,menuitem, style, export ,show in a another window,mvvm
    //xaml<Windowx:Class="WpfApp58.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.mic......
  • .NET Core 8 部署在 IIS 的简单三步
    .NET 部署 IIS 的简单步骤一:下载dotnet-hosting-x.y.z-win.exe,下载地址:.NETDownloads(Linux,macOS,andWindows)(microsoft.com) .NET 部署 IIS 的简单步骤二:选择对应的版本,点击进入详细页,如8.0的版本:版本最好和你的开发环境版本一致, 比如我的开发环境目......
  • dpdk报错/lib64/libibverbs.so.1: version `IBVERBS_1.8' not found (required by /us
    问题出现的原因:启动的程序需要dpdk,因为不是root用户,调用dodk的程序时报错:EAL:Errorcreating'/run/user/0/dpdk':PermissiondeniedEAL:Cannotcreateruntimedirectory一开始解决的方法是在绑定网卡的时候,/usr/local/sbin/bindnet.sh-vb ,绑定的时候给与普通用户使用的......
  • Docker安装部署Jenkins并发布NetCore应用
    Docker安装Jenkins#拉取镜像dockerpulljenkins/jenkins#查看镜像dockerimages#运行jenkins#8080端口为jenkinsWeb界面的默认端口13152是映射到外部:前面的是映射外部#50000端口为jenkins的默认代理节点(Agent)通信端口13153是映射到外部#--restart=on-fa......
  • WPF ContextMenu MenuItem style based on
    <Windowx:Class="WpfApp58.MainWindow"xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"xmlns:d="http://schemas.microsoft.......
  • layUI select下拉框动态赋值和设置选中值
    layUIselect下拉框动态赋值和设置选中值<script>layui.use(['form','layedit','laydate'],function(){var$=layui.jquery;$.ajax({url:'../api/SysType/GetArticleType?parentId=1',//json文......
  • LayUI弹窗确定后获取子页面的值(如获取UEditor富文本的内容,或input标签内容)
    LayUI弹窗确定后获取子页面的值(如获取UEditor富文本的内容,或input标签内容)子窗体JS代码<scriptsrc="~/lib/ueditor-1.4.3.3/ueditor.config.js"></script><scriptsrc="~/lib/ueditor-1.4.3.3/ueditor.all.js"></script><script>varue=UE.......
  • 获取layui表格(table)当前页的页码值和当前页的数据条数
    获取layui表格(table)当前页的页码值和当前页的数据条数在浏览器查看源码,获取当前页面的数据条数如下核心代码$(".layui-laypage-limits").find("option:selected").val()//分页数目$(".layui-laypage-skip").find("input").val()//当前页码值//转载请保留原创地址http:......
  • layUI Table自定义工具栏和搜索参数
    layUITable自定义工具栏和搜索参数视频讲解地址https://www.bilibili.com/video/BV1P94y197nNHTML代码<divclass="container-fluid"><tableclass="layui-hide"id="test"lay-filter="test"></table></div><s......