ActionResult 设置 HTTP StatusCode .NET Core Api
ActionResult to set HTTP StatusCode .NET Core Api
我只是试图从 API 调用返回 404 响应消息,但是 运行 遇到了一些问题。
我有以下函数,其中 returns 一个 ActionResult:
private static ActionResult StatusResult(HttpStatusCode statusCode, string reason) => new ContentResult
{
StatusCode = (int)statusCode,
Content = $"Status Code: {(int)statusCode} - {statusCode} | {reason}",
ContentType = "application/json",
};
并这样称呼它:
return StatusResult(HttpStatusCode.NotFound, "ID not found.");
它 returns 返回给客户端,但是 StatusCode 仍然是 200,而不是 404。有没有简单的方法来解决这个问题?
响应示例:
这可能并不适合所有人,但最后我直接编辑了 HttpContext 对象并将其返回给客户端。
给出了正确的状态代码作为响应。
context.Response.ContentType = "application / json";
context.Response.StatusCode = (int)statuscode;
我只是试图从 API 调用返回 404 响应消息,但是 运行 遇到了一些问题。
我有以下函数,其中 returns 一个 ActionResult:
private static ActionResult StatusResult(HttpStatusCode statusCode, string reason) => new ContentResult
{
StatusCode = (int)statusCode,
Content = $"Status Code: {(int)statusCode} - {statusCode} | {reason}",
ContentType = "application/json",
};
并这样称呼它:
return StatusResult(HttpStatusCode.NotFound, "ID not found.");
它 returns 返回给客户端,但是 StatusCode 仍然是 200,而不是 404。有没有简单的方法来解决这个问题?
响应示例:
这可能并不适合所有人,但最后我直接编辑了 HttpContext 对象并将其返回给客户端。
给出了正确的状态代码作为响应。
context.Response.ContentType = "application / json";
context.Response.StatusCode = (int)statuscode;