请求已中止:请求已取消。没有解决方案

时间:2014-02-04 09:34:03

标签: c# http-error system.net.webexception system.net.httpwebrequest

我们的控制台应用程序每分钟都会向Facebook发送数百个WebRequests(使用多个应用程序和数百个访问令牌)。现在,他们开始失败并在标题中显示异常消息(“请求已中止:请求已取消”)。我们在互联网上搜索了几个小时,并尝试了所有可能的解决方案,但没有任何帮助。

这些没有帮助:

webRequest.Timeout = 20000; //A request that didn't get respond within 20 seconds is unacceptable, and we would rather just retry.
webRequest.KeepAlive = false;
webRequest.ProtocolVersion = HttpVersion.Version10;
webRequest.ServicePoint.Expect100Continue = false;

任何人都有其他想法吗?

编辑:

  

异常的ToString:System.Net.WebException:请求是   已中止:请求已取消。 ---> System.Net.WebException:The   请求被取消了   System.Net.ServicePointManager.FindServicePoint(Uri地址,IWebProxy   代理,ProxyChain&连锁店,HttpAbortDelegate& abortDelegate,Int32&   abortState)at System.Net.HttpWebRequest.FindServicePoint(Boolean   forceFind)at   System.Net.HttpWebRequest.DoSubmitRequestProcessing(例外&安培;   异常)在System.Net.HttpWebRequest.SetResponse(例外E)---   内部异常堆栈跟踪结束--- at   WebException消息中的System.Net.HttpWebRequest.GetResponse():.   请求已中止:请求已取消。

edit2:我们没有达到极限。我们知道什么时候发生, 问题不是那个。我们这样做已经两年了, 这件事在整个时间里只发生过两次。每 AccessToken我们只做2-3次请求/分钟和限制 在Facebook上有600个请求/ accesstoken / ip。

edit3:我想为有这个或类似问题的人添加一个额外的提示:确保你处理你的RequestStream,你的Response和你的ResponseStream对象。

1 个答案:

答案 0 :(得分:8)

http://www.dotnetframework.org/default.aspx/4@0/4@0/untmp/DEVDIV_TFS/Dev10/Releases/RTMRel/ndp/fx/src/Net/System/Net/ServicePointManager@cs/1305376/ServicePointManager@cs

我可以看到抛出异常的位置。您是否尝试过增加HTTP请求限制?默认值为每秒2次。

ServicePointManager.DefaultConnectionLimit = 1000;