ASP.net是如何实现的;HttpResponse.IsClientConnected“;工作
如果HTTP是无连接的,ASP.net响应属性HttpResponse.IsClientConnected如何检测客户端是否连接?HTTP不是无连接的-您仍然需要连接才能从服务器接收数据;更准确地说,HTTP是无状态的。运行在HTTP之上的应用程序实际上很可能是有状态的,但HTTP本身不是 “无连接”也可以指使用UDP而不是TCP作为传输的系统。HTTP主要在TCP上运行,几乎所有真正的Web服务器都期望并返回TCP消息,而不是UDP消息。您可能会在基于UDP的协议(如UPnP)中看到类似HTTP的流量,但由于您希望可靠地传递网页,因此将始终使用TCP而不是UDP 至于ASP.net是如何实现的;HttpResponse.IsClientConnected“;工作,asp.net,http,Asp.net,Http,如果HTTP是无连接的,ASP.net响应属性HttpResponse.IsClientConnected如何检测客户端是否连接?HTTP不是无连接的-您仍然需要连接才能从服务器接收数据;更准确地说,HTTP是无状态的。运行在HTTP之上的应用程序实际上很可能是有状态的,但HTTP本身不是 “无连接”也可以指使用UDP而不是TCP作为传输的系统。HTTP主要在TCP上运行,几乎所有真正的Web服务器都期望并返回TCP消息,而不是UDP消息。您可能会在基于UDP的协议(如UPnP)中看到类似HTT
IsClientConnected
,当您访问该属性时,它会调用当前的HttpWorkerRequest
,该类是当前主机环境实现的抽象类
- IIS7+实现该方法时,如果之前收到TCP断开连接消息(设置字段),该方法现在将返回
false
- 相反,ISAPI实现(IIS 6)调用IIS中的一个函数,该函数通知调用方当前请求/响应上下文中的TCP客户端是否仍处于连接状态,但其工作原理大致相同:当Web服务器接收到TCP超时时,断开连接或连接重置消息它设置一个标志并允许继续执行,而不是终止响应生成器线程
:HttpResponse.IsClientConnected
:IIS7WorkerRequest.IsClientConnected
:ISAPIWorkerRequest.isClient已连接