services.AddSwaggerGen(x =>
{
});我探索了AddSwaggerGen() NuGet Swashbuckle.AspNetCore的方法。不幸的是,我还没有找到使用已经生成的开放API规范文件的path的方法。
我的API与.net核心中的文件上传有关,我已经编写了swagger规范文件swagger.yaml,它在editor.swagger.io中运行良好。有谁可以帮我?如何将生成的开放式API规范文件注入到SwaggerUI中,并将其与.net核中的NuGet Swashbuckle.AspNetCore一起使用
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/swagger.yaml", "My API V1");
});我已经在我的项目中创建了一个静态文件/swagger/swagger.yaml,但是Swagger仍然使用由内部生成的同一个文件。
发布于 2022-04-22 07:46:30
我也偶然发现了这个。一个可行的解决方案是在"wwwroot/swagger/swagger.yaml“中托管open/swagger文件,并使用静态文件托管中间件。您只需要SwaggerUI依赖,仅此而已。
在那之后,这个就管用了。
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/swagger.yaml", "My API V1");
});不幸的是,我遇到了这样的问题:默认情况下,.NET核心不承载静态YAML文件。您可以通过配置FileExtensionContentTypeProvider或启用服务未知内容类型解决这个问题。
希望这能帮上忙。
https://stackoverflow.com/questions/67289799
复制相似问题