Iis 7 尽快返回请求HttpModules

Iis 7 尽快返回请求HttpModules,iis-7,httpmodule,Iis 7,Httpmodule,在web站点中,我使用一个HttpModule捕获http POST请求,如中所示 在阅读了上下文BeginRequest事件中的文章正文后,我希望尽快向客户返回“OK”回复。 在IIS(7.5集成模式)中,防止进一步处理的最佳方法是什么?我认为这是最快的: Response.Clear(); Response.ClearHeaders(); Response.StatusCode = 200; Response.StatusDescription = "OK"; Response.Flus

在web站点中,我使用一个HttpModule捕获http POST请求,如中所示

在阅读了上下文BeginRequest事件中的文章正文后,我希望尽快向客户返回“OK”回复。

在IIS(7.5集成模式)中,防止进一步处理的最佳方法是什么?

我认为这是最快的:

Response.Clear();
Response.ClearHeaders();

Response.StatusCode = 200;
Response.StatusDescription = "OK";

Response.Flush();
HttpContext.Current.ApplicationInstance.CompleteRequest();

调用
HttpResponse.End()
。它将刷新任何挂起的内容(您的OK响应),然后结束请求。

CompleteRequest
将停止请求。Gerard希望实际发送一个OK响应。“CompleteRequest”由“response.End”隐式调用。但在后一种情况下,很可能会出现ThreadAboradexception(请参阅以下KB文章:)。我添加了一个Response.Flush(尽管我认为Gerard不想发送状态码以外的内容)…End()提供了ThreadAboradexception,而.CompleteRequest()则没有。另一方面,.Clear(),.ClearHeaders(),.Flush()似乎没有添加任何内容。使用CompleteRequest()时,Write(“OK”)也会在正文中给出OK响应。