| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Работа с сетью > httpClient и редирект, как боротся ? |
| Автор: googol 2.2.2009, 16:37 | ||
| Использую httpclient для скачки обычного HTML но возникает проблема сайт вызывает редирект установка переменной ALLOW_CIRCULAR_REDIRECTS не приводи к положительному результату возникает исключение CircularRedirectException Maximum redirects (100) exceeded я скачиваю первую страницу http://betbase.info/ но по ссылке которая на этой странице http://betbase.info/?setupoption=lang&newvalue=eng я уже перейти не могу Как с этим боротся ?
|
| Автор: Platon 2.2.2009, 17:02 |
| А зачем вы, позвольте узнать, initialState определяете 2 раза. Это не ваш код? Попробуйте для начала посмотреть FAQ про http://forum.vingrad.ru/faq/topic-216595.html |
| Автор: googol 2.2.2009, 17:48 |
| да код мой Суть в том что второй вызов executeMethod не проходит вываливается ошибка org.apache.commons.httpclient.CircularRedirectException: Circular redirect to 'http://www.betbase.info:80/' |
| Автор: Platon 2.2.2009, 18:43 |
| Увы, повторить ошибку не удалось. Всё проходит без проблем... |
| Автор: googol 2.2.2009, 19:23 |
| втом то и дело что раз 5 запусти а потом уже не будет. или на прямую скачать урл http://www.betbase.info/?setupoption=lang&newvalue=eng не получается Я уже запустил в броузере трассировку вот результат 16:01:47.372[113мс][всего 113мс] Статус: 302[Found] GET http://betbase.info/?setupoption=lang&newvalue=eng Флаги загрузки[LOAD_DOCUMENT_URI LOAD_INITIAL_DOCUMENT_URI ] Размер содержимого[0] Тип Mime[text/html] Заголовки запроса: Host[betbase.info] User-Agent[Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5] Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8] Accept-Language[ru,en-us;q=0.7,en;q=0.3] Accept-Encoding[gzip,deflate] Accept-Charset[windows-1251,utf-8;q=0.7,*;q=0.7] Keep-Alive[300] Connection[keep-alive] Referer[http://betbase.info/] Заголовки ответа: Date[Mon, 02 Feb 2009 14:01:50 GMT] Server[Apache] X-Powered-By[PHP/4.4.8] Set-Cookie[options=%26xupdate%3D528%26xtime%3D1233583310%26lang%3Deng%26userid%3Dy8e61233583310; expires=Tue, 02 Feb 2010 14:01:50 GMT; path=/; domain=betbase.info] Location[http://betbase.info/?setupoption=cookies&xupdate=528&xtime=1233583310&lang=eng&userid=y8e61233583310&lastURL=] Keep-Alive[timeout=15, max=100] Connection[Keep-Alive] Content-Type[text/html] Content-Length[0] 16:01:47.488[61мс][всего 61мс] Статус: 302[Found] GET http://betbase.info/?setupoption=cookies&xupdate=528&xtime=1233583310&lang=eng&userid=y8e61233583310&lastURL= Флаги загрузки[LOAD_DOCUMENT_URI LOAD_REPLACE LOAD_INITIAL_DOCUMENT_URI ] Размер содержимого[0] Тип Mime[text/html] Заголовки запроса: Host[betbase.info] User-Agent[Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5] Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8] Accept-Language[ru,en-us;q=0.7,en;q=0.3] Accept-Encoding[gzip,deflate] Accept-Charset[windows-1251,utf-8;q=0.7,*;q=0.7] Keep-Alive[300] Connection[keep-alive] Referer[http://betbase.info/] Cookie[options=%26xupdate%3D528%26xtime%3D1233583310%26lang%3Deng%26userid%3Dy8e61233583310] Заголовки ответа: Date[Mon, 02 Feb 2009 14:01:50 GMT] Server[Apache] X-Powered-By[PHP/4.4.8] Location[http://betbase.info/] Keep-Alive[timeout=15, max=99] Connection[Keep-Alive] Content-Type[text/html] Content-Length[0] 16:01:47.550[73мс][всего 73мс] Статус: 302[Found] GET http://betbase.info/ Флаги загрузки[LOAD_DOCUMENT_URI LOAD_REPLACE LOAD_INITIAL_DOCUMENT_URI ] Размер содержимого[0] Тип Mime[text/html] Заголовки запроса: Host[betbase.info] User-Agent[Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5] Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8] Accept-Language[ru,en-us;q=0.7,en;q=0.3] Accept-Encoding[gzip,deflate] Accept-Charset[windows-1251,utf-8;q=0.7,*;q=0.7] Keep-Alive[300] Connection[keep-alive] Referer[http://betbase.info/] Cookie[options=%26xupdate%3D528%26xtime%3D1233583310%26lang%3Deng%26userid%3Dy8e61233583310] Заголовки ответа: Date[Mon, 02 Feb 2009 14:01:50 GMT] Server[Apache] X-Powered-By[PHP/4.4.8] Pragma[no-cache] Cache-Control[no-cache] Expires[Thu, 01 Jan 1970 00:00:00 GMT] Last-Modified[Mon, 02 Feb 2009 14:01:50 GMT] Location[http://www.betbase1.info/?uic=y8e61233583310] Keep-Alive[timeout=15, max=98] Connection[Keep-Alive] Content-Type[text/html] Content-Length[0] 16:01:47.626[509мс][всего 509мс] Статус: 302[Found] GET http://www.betbase1.info/?uic=y8e61233583310 Флаги загрузки[LOAD_DOCUMENT_URI LOAD_REPLACE LOAD_INITIAL_DOCUMENT_URI ] Размер содержимого[0] Тип Mime[text/html] Заголовки запроса: Host[www.betbase1.info] User-Agent[Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5] Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8] Accept-Language[ru,en-us;q=0.7,en;q=0.3] Accept-Encoding[gzip,deflate] Accept-Charset[windows-1251,utf-8;q=0.7,*;q=0.7] Keep-Alive[300] Connection[keep-alive] Referer[http://betbase.info/] Cookie[options=%26xupdate%3D531%26xtime%3D1233580822%26userid%3Dy9cf1233578765] Заголовки ответа: Date[Mon, 02 Feb 2009 14:01:49 GMT] Server[Apache/2.0.63 (Unix) mod_ssl/2.0.63 OpenSSL/0.9.8b mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 PHP/4.4.7] X-Powered-By[PHP/4.4.7] Set-Cookie[options=%26xupdate%3D532%26xtime%3D1233583309%26userid%3Dy9cf1233578765; expires=Tue, 02 Feb 2010 14:01:49 GMT; path=/; domain=www.betbase1.info] Location[http://www.betbase1.info/] Keep-Alive[timeout=15, max=100] Connection[Keep-Alive] Content-Type[text/html] Content-Length[0] 16:01:48.138[510мс][всего 2787мс] Статус: 200[OK] GET http://www.betbase1.info/ Флаги загрузки[LOAD_DOCUMENT_URI LOAD_REPLACE LOAD_INITIAL_DOCUMENT_URI ] Размер содержимого[10544] Тип Mime[text/html] Заголовки запроса: Host[www.betbase1.info] User-Agent[Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.5) Gecko/2008120122 Firefox/3.0.5] Accept[text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8] Accept-Language[ru,en-us;q=0.7,en;q=0.3] Accept-Encoding[gzip,deflate] Accept-Charset[windows-1251,utf-8;q=0.7,*;q=0.7] Keep-Alive[300] Connection[keep-alive] Referer[http://betbase.info/] Cookie[options=%26xupdate%3D532%26xtime%3D1233583309%26userid%3Dy9cf1233578765] Заголовки ответа: Date[Mon, 02 Feb 2009 14:01:49 GMT] Server[Apache/2.0.63 (Unix) mod_ssl/2.0.63 OpenSSL/0.9.8b mod_auth_passthrough/2.1 mod_bwlimited/1.4 FrontPage/5.0.2.2635 PHP/4.4.7] X-Powered-By[PHP/4.4.7] Pragma[no-cache] Cache-Control[no-cache] Expires[Thu, 01 Jan 1970 00:00:00 GMT] Last-Modified[Mon, 02 Feb 2009 14:01:49 GMT] Keep-Alive[timeout=15, max=99] Connection[Keep-Alive] Content-Type[text/html] Content-Length[10544] получается 4 редиректа с установкой куки и вызов с новыми параметрами |
| Автор: Platon 2.2.2009, 19:51 |
| Ну, тогда попробуй убрать автоматические редиректы httpget.setFollowRedirects(false); и потом анализируй куки на каждом шаге и сравнивай с теми, которые устанавливались в FF. |
| Автор: googol 2.2.2009, 21:16 | ||
| Теперь другое дело ! помогло httpget.setFollowRedirects(false); да после каждого запроса
и так пока httpclient.executeMethod(httpget); не вернет 200 не понятно почему httpclient.getParams().setBooleanParameter(HttpClientParams.ALLOW_CIRCULAR_REDIRECTS,true); не может отработать всего 6 редиректов |
| Автор: googol 2.2.2009, 21:51 |
| но теперь встала проблема сервер отдает в заголовке пусто Location |