如何从HTTP 403方法返回WebAPI?我尝试用HttpResponseException抛出HttpStatusCode.Forbidden,并且尝试了

return request.CreateErrorResponse(HttpStatusCode.Forbidden, pEx);

两者都不起作用。两者总是返回HTTP 200。我想念什么?它必须很简单,但我看不到。

最佳答案

您的路由配置可能有问题。以下是一个工作示例。将其放在您的 Controller 中,看看它是否有效。如果没有,请使用诊断工具(即Cobisi Routing Assistant)检查路由。

public HttpResponseMessage GetSomeString(int id)
{
    // This method is not allowed!
    return this.Request.CreateErrorResponse(HttpStatusCode.Forbidden, "This method is not allowed!");
}

09-06 19:00