有没有什么办法可以使用ASP.NET Boilerplate返回自定义HTTP状态代码(如4xx)?自定义API响应HTTP状态代码与ABP框架
我想在验证的上下文中设置自定义应用程序特定的HTTP代码以添加更多粒度。目前ABP将为所有验证错误设置200(OK)。
在ABP的源代码是看几个地方像一个下面,其中Response.StatusCode
由框架设置喜欢这里:
private void HandleAndWrapException(ExceptionContext context)
{
if (!ActionResultHelper.IsObjectResult(context.ActionDescriptor.GetMethodInfo().ReturnType))
{
return;
}
context.HttpContext.Response.Clear();
context.HttpContext.Response.StatusCode = (int)HttpStatusCode.InternalServerError;
context.Result = new ObjectResult(
new AjaxResponse(
_errorInfoBuilder.BuildForException(context.Exception),
context.Exception is AbpAuthorizationException
)
);
context.Exception = null; //Handled!
}
我认为只有'[DontWrapResult]'可以帮助你。 –