Или так: "Webexception: Too many redirects".
Неблагодарное занятие парсить html страницы. Постоянно приходится менять код.Полгода приложение работало нормально закачивало ссылку, а теперь выдает ошибку. Chrome качает без проблем, а программа не может. Пришлось разбираться с помощью Fiddler.
Итак можно четко увидеть, что на мой запрос сервер возвращает HTTP 302, то есть делает редирект на ту же самую страницу (Location: http://etp.zakazrf.ru/Reductions.aspx), одновременно устанавливает cookies (Set-cookies: ASP.NET_SessionId....). В моем приложении cookies не обрабатовались, поэтому программа постоянно получала HTTP 302, делала редирект на Location, и так по кругу, пока счетчик перенаправлений не сравнялся с параметром
request.MaximumAutomaticRedirections ( по умолчанию равен 50).
Пришлось изменить код
Спасибо, выручили!!!
ОтветитьУдалитьСпасибо большое!!!
ОтветитьУдалитьСПАСИБО! очень помогли!
ОтветитьУдалитьcbr сбоит?
УдалитьВ первом запросе не хватает
ОтветитьУдалитьrequest->CookieContainer = gcnew CookieContainer();
Иначе, куки не записываются в response.
большое спасибо. Очень помогло.
ОтветитьУдалитьСпасибо огромное!
ОтветитьУдалитьПросто выручил! Хотя позже оказалось, что библиотека HtmlAgilityPack делает то же самое одной командой Load.
ОтветитьУдалитьHtmlDocument hd = new HtmlDocument();
HtmlWeb hw = new HtmlWeb();
hd = hw.Load("uri");
Ну, или в моём случае (с прокси):
hd = hw.Load("uri", "proxy-host", "proxy-port", "username", "password");
Спасибо!
ОтветитьУдалить