.NET Core 3.1 - Swagger 未加载
.NET Core 3.1 - Swagger not loadig
我正在尝试在我的 WebApi 中实施 Swagger。但是,它不起作用。问题是 swagger.json 永远加载。当我尝试转到 /swagger/v1/swagger.json
时,它永远加载并且我的 CPU 使用率飙升至 100%。
这是我的配置:
public class Startup
{
...
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
...
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo
{
Version = "v1",
Title = "ToDo API"
});
});
...
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IServiceProvider services)
{
...
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});
// Setup the endpoints.
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller}/{action}/{id?}");
endpoints.MapHub<HomeHub>("/homehub");
});
}
}
我当然已经在互联网上四处寻找,但找不到任何解决方案。我没有收到任何错误,那可能是什么问题?
更新:
我试过使用 CLI 生成 json 文件,但遇到了同样的问题。它只是加载,没有任何反应。除了占用 24GB 的内存...
我认为是您的某个控制器或 class 导致了此错误。看起来 swagger 试图递归地加载一些东西。
我建议您使用内存分析器(如 dotMemory)来找出发生了什么(是什么造成了内存泄漏)
另一种解决方法是注释掉所有控制器并一个一个启用它们,直到找到错误代码。
您可能还想查看
我正在尝试在我的 WebApi 中实施 Swagger。但是,它不起作用。问题是 swagger.json 永远加载。当我尝试转到 /swagger/v1/swagger.json
时,它永远加载并且我的 CPU 使用率飙升至 100%。
这是我的配置:
public class Startup
{
...
// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
...
services.AddSwaggerGen(c =>
{
c.SwaggerDoc("v1", new OpenApiInfo
{
Version = "v1",
Title = "ToDo API"
});
});
...
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IServiceProvider services)
{
...
app.UseSwagger();
app.UseSwaggerUI(c =>
{
c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
});
// Setup the endpoints.
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller}/{action}/{id?}");
endpoints.MapHub<HomeHub>("/homehub");
});
}
}
我当然已经在互联网上四处寻找,但找不到任何解决方案。我没有收到任何错误,那可能是什么问题?
更新:
我试过使用 CLI 生成 json 文件,但遇到了同样的问题。它只是加载,没有任何反应。除了占用 24GB 的内存...
我认为是您的某个控制器或 class 导致了此错误。看起来 swagger 试图递归地加载一些东西。
我建议您使用内存分析器(如 dotMemory)来找出发生了什么(是什么造成了内存泄漏)
另一种解决方法是注释掉所有控制器并一个一个启用它们,直到找到错误代码。
您可能还想查看