You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

发布ASP.NET Core Web API到Azure时Swagger问题排查与解决

.NET Core Web API发布到Azure的Swagger问题排查与解决

问题1:.NET 6 API发布后Swagger报错

将基于.NET 6的ASP.NET Core Web API发布到Azure后,Web应用显示发布成功,但生成Swagger文件时报错,提示需在Startup.cs的ConfigureServices中调用AddSwaggerGen。

  • 已在Program.cs中配置AddSwaggerGen,重新发布后报错依旧
  • 临时处理:将API升级到.NET 7后发布成功,但出现新问题

问题2:.NET 7 API发布后Swagger页面404

升级到.NET 7并发布成功后,访问azurewebsites.net站点时Swagger文档显示404错误。

  • 排查结论:生产环境未配置UseSwaggerUI中间件
  • 最终解决:调整中间件配置,为生产环境启用SwaggerUI,发布后站点默认显示Swagger文档

正确的.NET 7 Swagger配置示例(Program.cs)

var builder = WebApplication.CreateBuilder(args);

// 配置Swagger服务
builder.Services.AddSwaggerGen(c =>
{
    c.SwaggerDoc("v1", new() { Title = "你的API名称", Version = "v1" });
});

var app = builder.Build();

// 启用Swagger及SwaggerUI(支持生产环境)
app.UseSwagger();
app.UseSwaggerUI(c =>
{
    c.SwaggerEndpoint("/swagger/v1/swagger.json", "你的API V1");
    // 设置站点根路径直接加载SwaggerUI
    c.RoutePrefix = string.Empty;
});

app.UseHttpsRedirection();
app.UseAuthorization();
app.MapControllers();

app.Run();

内容的提问来源于stack exchange,提问作者Tim

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 16:32:10