我正在尝试这样做
throw new HttpResponseException(HttpStatusCode.Unauthorized); // 401
但这总是返回500(内部服务器错误)。
示例代码:
using System.Net;
using Microsoft.AspNetCore.Mvc;
using System.Web.Http;
namespace Gral_WebAPI.Controllers
{
[Produces("application/json")]
public class LoginController : ApiController
{
[Microsoft.AspNetCore.Mvc.HttpGet]
[Microsoft.AspNetCore.Mvc.Route("[action]")]
public string GitTest()
{
throw new HttpResponseException(HttpStatusCode.Unauthorized); // 401
}
}
}
有人可以帮助我吗?
答案 0 :(得分:3)
您可以改用return StatusCode(401);
。您应该避免使用异常来控制应用程序的流程。
您是否有任何中间件正在拦截异常并将状态代码覆盖为500?