ASP NET Core Minimal API 总是 returns 200 而不是指定的 204

ASP NET Core Minimal API always returns 200 instead of specified 204

即使我说 return 204(NoContent),它 return 也是 200。为什么?

app.MapGet("/api/alive", (context) => Task.FromResult(new StatusCodeResult(204)));

浏览器状态码为200

解决方案是稍微更改签名:

app.MapGet("/api/alive", () => Results.NoContent());

(context) 单独不起作用, 编辑:以及(RequestDelegate 上下文)不起作用。

app.MapGet("/api/alive", (context) => Results.NoContent());
app.MapGet("/api/alive", (RequestDelegate context) => Results.NoContent());