我们正在对webapi进行升级,以便在我们的dotnet核心应用程序中启用OAS3.0,从文档中看,它似乎只在SwashBuckle.Aspnetcore 5.4.1 +版本中受支持。正如这里提到的:https://github.com/domaindrivendev/Swashbuckle.AspNetCore
因此,我们将SwashBuckle.Aspenetcore升级到了5.4.1。但是,当我们运行应用程序时,它仍然生成swagger 2.0而不是OAS 3.01。现在,同一页上的文档并没有指定从swagger2.0-->OAS3.0升级时必须执行的任何特殊操作。目前,我的小配置如下所示:
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/myapp/swagger/v1/swagger.json", "API name");
c.RoutePrefix = "myapp/swagger";
c.DisplayRequestDuration();
c.DisplayOperationId();
});该页面上的文档还指向一个页面,该页面在以下链接中提到了对OAS3.0的支持:https://swagger.io/specification/
但同样不是要引用的代码。有人能告诉我如何将我的API从swagger 2.0升级到OAS 3.0的细节吗?
发布于 2020-05-22 01:32:16
看起来你在代码中的某个地方使用了c.SerializeAsV2 = true。要输出OpenAPI 3.0,此选项必须为false。
https://stackoverflow.com/questions/61901423
复制相似问题