问题描述
我只是尝试从 API 调用发回 404 响应消息,但遇到了一些问题。
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.");
它返回给客户端,但是状态码仍然是 200,而不是 404。有没有简单的方法来解决这个问题?
响应示例:
解决方法
这可能不适用于所有人,但最后我直接编辑了 HttpContext 对象并将其返回给客户端。
哪个给出了正确的状态代码作为响应。
context.Response.ContentType = "application / json";
context.Response.StatusCode = (int)statuscode;