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

ASP.NET Core Web API所有端点返回404,路由配置无误

ASP.NET Core Web API 404/空响应问题排查

我正在用ASP.NET Core开发集成JWT认证与Identity的Web API,项目结构合理,已在Program.cs中配置路由、服务及中间件:

Program.cs 关键代码

app.UseHttpsRedirection();
app.UseRouting();
app.UseAuthentication();
app.UseAuthorization();
app.MapControllers();
app.MapGet("/", () => "API is alive");

示例控制器代码

[ApiController]
[Route("api/[controller]")]
public class PingController : ControllerBase
{
    [HttpGet]
    public IActionResult Get() => Ok("API is alive");
}

运行应用后,访问任意端点(如/api/auth/register或/swagger)时,浏览器和Postman均持续返回HTTP 404 Not Found或ERR_EMPTY_RESPONSE。

我已完成以下排查操作:

  • 移除app.UseHttpsRedirection(),排除HTTPS端口错误
  • 确认app.UseRouting()、app.UseAuthentication()、app.UseAuthorization()及app.MapControllers()配置完整
  • 验证控制器已添加[ApiController]和[Route("api/[controller]")]特性
  • 检查launchSettings.json仅使用HTTP(地址为http://localhost:5254)

在包含BankingApp.API.csproj的文件夹执行dotnet run,未发现启动错误,但访问http://localhost:5254/swagger和http://localhost:5254/api/ping时,仍返回404或空响应。


可行解决方向

  1. 确认控制器程序集被扫描
    如果控制器在独立类库中,需在Program.cs中手动添加程序集引用,确保ASP.NET Core能扫描到控制器:
builder.Services.AddControllers()
    .AddApplicationPart(typeof(PingController).Assembly);
  1. 检查Swagger配置完整性
    若要访问Swagger端点,必须完整配置Swagger服务与中间件,且中间件顺序要正确(放在UseRouting()之后、MapControllers()之前):
// 配置Swagger服务
builder.Services.AddSwaggerGen();

// 启用Swagger UI中间件
app.UseSwagger();
app.UseSwaggerUI(c =>
{
    c.SwaggerEndpoint("/swagger/v1/swagger.json", "BankingApp API V1");
});
  1. 排查端口占用情况
    执行命令netstat -ano | findstr :5254检查端口5254是否被其他进程占用,若占用则修改launchSettings.json中的端口号。

  2. 启用路由调试日志
    在appsettings.json中添加路由调试日志配置,查看请求是否匹配到对应控制器:

"Logging": {
    "LogLevel": {
        "Microsoft.AspNetCore.Routing": "Debug"
    }
}

启动应用后查看日志输出,确认路由匹配逻辑是否正常。

  1. 验证控制器服务注册
    确保Program.cs中已正确添加控制器服务,这是路由生效的核心前提:
var builder = WebApplication.CreateBuilder(args);
// 必须添加控制器服务
builder.Services.AddControllers();
// 其他服务配置(如Identity、JWT)
var app = builder.Build();
// 中间件配置...

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 09:12:37