5

Наши консольные приложения ежедневно делают сотни WebRequests в Facebook (с использованием нескольких приложений и сотен токенов доступа). Теперь они начали сбой с сообщением об исключении в заголовке («Запрос был прерван: запрос был отменен»). Мы искали часы в Интернете и опробовали все возможные решения, но ничего не помогли.Запрос был прерван: запрос был отменен. Никакое решение не работает

Это не помогло:

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: Запрос был отменен в System.Net.ServicePointManager.FindServicePoint (Uri адрес, IWebProxy прокси, ProxyChain & цепи, HttpAbortDelegate & abortDelegate, Int32 & abortState) в System.Net. HttpWebRequest.FindServicePoint (Boolean forceFind) при System.Net.HttpWebRequest.DoSubmitRequestProcessing (исключение & исключение) в System.Net.HttpWebRequest.SetResponse (исключение Е) --- Конец внутренней трассировки стека исключений --- в System.Net.HttpWebRequest.GetResponse() в сообщении WebException: запрос был прерван: запрос был отменен.

edit2: И мы НЕ достигаем предела. Мы знаем, когда это происходит, , и проблема не в этом. Мы делали это в течение двух лет, , и эта вещь случалась только дважды в течение всего времени. По AccessToken мы делаем только 2-3 запроса/минуту, а дросселирование на Facebook - 600 запросов/accesstoken/ip.

edit3: Я хотел бы добавить дополнительную подсказку для людей, у которых есть эта или аналогичная проблема: Убедитесь, что вы удаляете RequestStream, свой ответ и объект ResponseStream.

+0

Что вам сообщило сообщение об ошибке? Что вы сделали, чтобы найти причину проблемы? – usr

+2

Сотни запросов на Facebook каждую минуту? Вероятно, вы заблокированы Facebook для чрезмерного использования. –

+0

Mike W -> Мы не заблокированы. –

ответ

7

http://www.dotnetframework.org/default.aspx/[email protected]/[email protected]/untmp/DEVDIV_TFS/Dev10/Releases/RTMRel/ndp/fx/src/Net/System/Net/[email protected]/1305376/[email protected]

я могу увидеть, где исключение. Вы пытались увеличить лимит HTTP-запроса? Значение по умолчанию - 2 секунды.

ServicePointManager.DefaultConnectionLimit = 1000; 
+0

Спасибо. Я знал, что проблема не в Facebook. –

+0

Да, предел Facebook привел бы к другому сообщению об ошибке. Вероятно, статус 500 + некоторое сообщение. Для этого не было никаких доказательств. – usr

+0

Достижение предела достигает этого сообщения: «Вызовы к потоку превысили 600 звонков за 600 секунд» (мы используем FQL) –

Смежные вопросы