通常在网络协议中,请求的标头经过预处理,然后将处理请求的正文。对于HTTP,我不确定,但是我想知道在请求正文及其参数之前是否有任何方法可以处理标头?
以C#方式交谈,是否有任何方法可以在Controller方法被触发之前处理请求标头?
如果答案为是,我想将客户端版本发送到我的服务器,如果它们与发送客户端合适的响应不匹配。我要执行此操作,因为它可能发生我的请求主体很大(例如10MB),并且我想在等待接收整个HTTP请求之前对标头进行预处理。
public class MySampleActionFilter : IActionFilter
{
public void OnActionExecuting (ActionExecutingContext context)
{
// Do something before the action executes.
}
public void OnActionExecuted(ActionExecutedContext context)
{
// Do something after the action executes.
}
}
根据文档,您可以覆盖操作上下文并缩短结果,而无需进入控制器。
结果-设置结果使操作方法和后续操作过滤器的执行短路。