Http 如何从ActionFilter(.NET Core)返回ReasonPhase作为响应
我在.NET Core MVC ActionFilter中执行以下操作以返回禁止的状态代码:Http 如何从ActionFilter(.NET Core)返回ReasonPhase作为响应,http,asp.net-core,asp.net-core-mvc,action-filter,Http,Asp.net Core,Asp.net Core Mvc,Action Filter,我在.NET Core MVC ActionFilter中执行以下操作以返回禁止的状态代码: public override void OnActionExecuting(ActionExecutingContext context) { context.Result = new ContentResult() { StatusCode = (int)HttpStatusCode.Forbidden, Con
public override void OnActionExecuting(ActionExecutingContext context)
{
context.Result = new ContentResult()
{
StatusCode = (int)HttpStatusCode.Forbidden,
Content = "Token header is missing",
ContentType = "text/plain",
};
return;
}
这很好,但我还想设置“ReasonPhrase”,它位于从调用HttpClient.SendAsync方法返回的“HttpResponseMessage”类中。如何从ActionFilter设置ReasonPhrase?我对action Filter一无所知,但请注意,ReasonPhrase是HTTP的一个不推荐的功能—它们在HTTP/2中不存在—因此,更新的API可能无法提供对它们的任何访问。此外,
应用程序/text
也不是一个好方法。您可能需要text/plain
。谢谢@VasiliyFaronov!我不知道它被弃用了。我只是想找到一种方法,如何用状态码传达更多的信息。不是完整的错误信息,而是给出提示的信息。