如果收到不完整/慢速的http请求,我有一个获得DOS的应用程序。我调试并发现原因是当我尝试访问HTTP请求时,应用程序停止,直到请求完成。我需要一种方法告诉我请求是否完整。像Request.IsComplete()
编辑
示例:
protected void Application_BeginRequest()
{
Log(Request["Query"]);
}
请求尝试永远获取Request [Query]。
我创建了一个可以抽象的客户端,如下所示
socket.Connect(uri.Host, uri.Port);
SendRequest(socket, uri, payload, bytesToTruncate);
socket.Close();
如果我进入调试模式,SendRequest()
之后,请求会在调用Application_BeginRequest()
之前进入socket.Close()
,但我将无法访问Request["Query"]
{ {1}}直到Application_BeginRequest
被调用。它基本上停止并等待socket.Close()
完成