swashbuckle 相关问题

Swashbuckle是一个开源框架,它将Swagger和Swagger-ui添加到ASP.NET Web API项目中。

排除 Swagger .NET 中的循环引用

我最近有一个项目迁移到.NET 8,我发现构建管道的 terraform 脚本无法生成 Swagger JSON,因此无法将其添加到我们的 APIM 中。 我有什么

回答 1 投票 0

使用 VB.Net 的 swagger 接收 404 响应

我正在尝试将 Swagger 连接到 VB.Net REST API 项目。无论我尝试什么,应用程序在点击 swagger/ui/index URL 时都会继续返回 404 响应。最初,在启动时我输入

回答 1 投票 0

如何使用 swashbuckle 在 .net 8 中自定义 swagger.json 文件名

我尝试将 swagger 文档拆分为同一版本下的不同部分,以便我可以在端点中访问它们,如下所示: 应用程序.UseSwagger(s => { s.SerializeAsV2 = true; }) .

回答 1 投票 0

示例请求正文中 JsonPatchDocument 的 Swagger 意外 API PATCH 操作文档

我正在制作 Core 3.1 Web API 并使用 JsonPatch 创建 PATCH 操作。我有一个名为 Patch 的操作,它有一个 JsonPatchDocument 参数。这是该操作的签名: [HttpPatch("{id}&

回答 2 投票 0

ASP.NET 承载身份验证,不适用于 swagger。正在与邮递员合作

我正在尝试为我的 ASP.NET Web api 设置身份验证。我已使用 Firebase Google 作为我的身份提供商添加了 jwt 身份验证。 当我尝试通过 swagger ui 进行身份验证时,我可以

回答 0 投票 0

如何在 Swashbuckle 中替换 Swagger UI 标题徽标

我正在使用 WebAPI 的 Swashbuckle 包,并尝试自定义 swagger UI 默认页面的外观和感觉。 我想自定义默认的招摇徽标/标题。我有添加...

回答 8 投票 0

C# Api 控制器 - 如何实现 swagger oneOf

我必须用C#实现这种Api控制器: 请求正文: 描述:包含宠物信息的JSON对象 内容: 应用程序/json: 学校...

回答 1 投票 0

使用 Swashbuckle Swagger 创建 Web API 文档时如何为每个控制器拥有单独的 URL?

我在我的 Web API 项目中使用 Swashbuckle Swagger。默认情况下,所有控制器都列在同一页面上吗? 有什么办法可以让每个控制器都有单独的 URL,并且每个 URL 都可以...

回答 1 投票 0

Swashbuckle 不再正确呈现 HTML Swagger 文档

我有一些 Web 服务方法,它们会因不同原因返回相同的 HTTP 响应,例如针对不同质量的已发布数据返回 400 错误请求。我使用 Swashbuckle 生成 Swagger API

回答 2 投票 0

添加Swashbuckle备注时如何获取JSON格式?

我一直在关注 Swashbuckle 上的本教程,但是当我添加备注时,它们显示为常规文本,而不是备注部分中显示的 JSON。是否可以获取 JSON 格式?

回答 2 投票 0

是否可以向 dotnetcore api 应用程序中的路径变量添加参数验证?

给出方法: /// 文件所在的容器。 /// 要获取的文件名。 给出方法: /// <param name="containername">The container the file resides in.</param> /// <param name="fileName">The name of the file to get.</param> /// <returns>The file specified.</returns> [HttpGet("{containername}/contentfiles/{fileName}", Name = "Get")] [ProducesResponseType(typeof(FileResult), StatusCodes.Status200OK)] [ProducesResponseType(typeof(ErrorResponse), StatusCodes.Status400BadRequest)] [ProducesResponseType(typeof(ErrorResponse), StatusCodes.Status404NotFound)] [ProducesResponseType(typeof(ErrorResponse), StatusCodes.Status503ServiceUnavailable)] public ActionResult Get(string containername, string fileName) 我检查容器名称和文件名对于我的目的是否有效,然后获取数据。 Swagger 自动给我 *required,但不是最小长度和最大长度,这是有道理的,因为它不知道在哪里可以找到这些。 我希望我能做这样的事情: /// <param name="containername" minimum="3" maximum="63">The container the file resides in.</param> 但它只是放弃了那些。如何将它们添加到我自动生成的 Swagger 文档中(我正在使用 Swashbuckle,以防万一)? 我使用 ASP.NET Core 3.1 Api 项目创建了一个示例项目。 首先让我们看一下控制器,注意 ApiController 属性,并注意 FromRoute 属性: using Microsoft.AspNetCore.Mvc; using System.ComponentModel.DataAnnotations; namespace ValidationExampleApi.Controllers { [ApiController] [Route("[controller]")] public class ValidationController : ControllerBase { [HttpGet("{containername}/contentfiles/{fileName}")] public bool Get([FromRoute]RequestModel request)//it will return 400 bad request if validation fails { if(ModelState.IsValid)//please note in this case this line will never be hit. { return false; } else { return true; } } } } 现在让我们看一下模型并注意带有一些验证规范的数据注释: using Microsoft.AspNetCore.Mvc; using System.ComponentModel.DataAnnotations; namespace ValidationExampleApi.Controllers { public class RequestModel { [Required(AllowEmptyStrings = false)] [StringLength(5, MinimumLength = 2)] public string containername { get; set; } [Required(AllowEmptyStrings = false)] [StringLength(5, MinimumLength = 2)] public string fileName { get; set; } } } 现在让我们看看我的启动类,注意我添加了普通的默认 swashbuckle 配置: using Microsoft.AspNetCore.Builder; using Microsoft.AspNetCore.Hosting; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Hosting; using Microsoft.OpenApi.Models; namespace ValidationExampleApi { public class Startup { public Startup(IConfiguration configuration) { Configuration = configuration; } public IConfiguration Configuration { get; } // This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddControllers(); services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "My API", Version = "v1" }); }); } // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { if(env.IsDevelopment()) { app.UseDeveloperExceptionPage(); } // Enable middleware to serve generated Swagger as a JSON endpoint. app.UseSwagger(); // Enable middleware to serve swagger-ui (HTML, JS, CSS, etc.), // specifying the Swagger JSON endpoint. app.UseSwaggerUI(c => { c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1"); c.RoutePrefix = string.Empty; }); app.UseRouting(); app.UseAuthorization(); app.UseEndpoints(endpoints => { endpoints.MapControllers(); }); } } } 现在看看我的招摇如何表明我违反了最大长度: 最后注意事项: 您还可以将路由参数与查询参数结合起来。 您还可以在模型的属性级别应用“FromRoute”属性。 有很多方法可以做到这一点。这只是一个“让您开始”的示例。 自定义错误响应: 在这里您可以看到如何使用错误处理程序以及 InvalidModelStateFactory 和 ValidationProblemDetails:自定义处理错误 这是有关如何使用 InvalidModelStateFactory 的另一个示例: 关于如何自定义错误的另一个示例

回答 1 投票 0

Swagger UI 不显示模型

在我的 api 操作上添加属性 [ApiExplorerSettings(IgnoreApi = true)] 后,Swagger UI 不显示模型。 在我的 api 上添加属性 [ApiExplorerSettings(IgnoreApi = true)] 之前

回答 2 投票 0

路径参数未从 UI 填充

我正在使用 Swashbuckle.AspNetCore 6.5.0 视图类型=完整 widgetguid=940FFD66-A7C2-42F5-AAA2-153CBF9136EE 在 Swagger UI 中,当我执行填充了两个路径参数的 API 调用时,它会生成以下内容: 哈...

回答 1 投票 0

在路由中使用枚举

使用控制器时,您可以在路由中使用枚举,但必须添加以下内容 builder.Services.AddControllers(); .AddJsonOptions(选项=> options.JsonSerializerOptions.Conve...

回答 1 投票 0

是否有任何工具可以从 JSON 或 Open API 自动创建类似 wiki 的 REST API 文档?

我有多项服务,每一项服务都通过 REST API 和 ASP.NET Core Web API 公开。我使用 Swashbuckle 作为 ASP.NET Core 工具,以便从我的控制器和 DTO 自动生成所有...

回答 2 投票 0

如何配置 Swashbuckle 来隐藏 curl 命令和响应表?

在 SwashbuckleUI 中,我的 CURL 命令可能会变得相当大。如果我对curl感兴趣,我通常只想复制它。 有没有办法将 SwashbuckleUI 配置为 隐藏卷曲命令 隐藏响应表...

回答 1 投票 0

我可以将 Swashbuckle 用于与端点不相关的多个文档吗?

我正在构建一个 ASP.NET Core Web API,使用 Swashbuckle 生成一个 swagger 文档页面。我已经使用 Info 对象来自定义描述,但我想知道 Swashbuckle 是否支持添加其他

回答 2 投票 0

Swagger 的操作过滤器无法正常工作 - 它在每个 api 端点上显示授权选项

我正在使用.net6.0创建一个api。我想为 api 文档添加 Swagger UI,我添加了它,并且它在大部分情况下都有效。我面临的唯一问题是 swagger UI 在电子设备上显示挂锁...

回答 1 投票 0

隐藏标题以防止在 Swagger Swashbuckle 中显示

由于我已经添加了通用授权,如何从每个 API 中删除单独的(授权标头),如下图链接所示? swaggerHub_链接

回答 1 投票 0

如何在 AspNetCore 中定义 OpenApi 的文件响应

我正在 AspNet Core 5 中编写一个控制器方法,该方法应该以流的形式返回文件。 [http获取] [路线(“/docs/{id}”)] [产生响应类型(StatusCodes.Status200OK)] 公共异步任务<

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.