C# 如何从.NET中止HTTP请求?

C# 如何从.NET中止HTTP请求?,c#,asp.net,.net,http,C#,Asp.net,.net,Http,当我使用fiddler时,我可以通过右键单击请求并选择abort session选项来中止http请求。我可以从服务器端(我运行了ASP.NET Web API)确认客户端已有效断开连接。现在,我正试图从.NET客户端模拟相同的行为 到目前为止,我尝试了诸如,System.Net.Http.HttpClient.CancelPendingRequests或 System.Net.HttpWebRequest.Abort。然而,无论我如何尝试,从fiddler我观察到,尽管我在进行上述调用,请求仍

当我使用fiddler时,我可以通过右键单击请求并选择abort session选项来中止http请求。我可以从服务器端(我运行了ASP.NET Web API)确认客户端已有效断开连接。现在,我正试图从
.NET客户端
模拟相同的行为

到目前为止,我尝试了诸如,
System.Net.Http.HttpClient.CancelPendingRequests

System.Net.HttpWebRequest.Abort
。然而,无论我如何尝试,从fiddler我观察到,尽管我在进行上述调用,请求仍在运行并返回响应。换句话说,这些调用不会导致服务器检测到断开连接。有什么方法可以实现我想要的吗?

我相信.NET取消功能可以实现,但Fiddler仍在继续提出请求。小提琴手不仅仅是一个观察者。这是一个中间人。它会终止您的连接并启动自己与服务器的连接

您可以通过发出一些浏览器请求并终止浏览器进程来尝试这一点。如果Fiddler没有显示任何类型的消息或错误,那么这意味着Fiddler只会忽略已终止的客户端连接

您还可以使用Wireshark测试这一点


看来你没什么问题。这应该是可行的。

取消客户端请求并不意味着服务器将停止处理它。客户端将停止等待响应,并关闭自己的连接。@PanagiotisKanavos您缺少“必然”一词。HTTP服务器可以检测客户端断开连接并对其进行操作。是的,这是我的问题。关闭fiddler,现在一切正常。