Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Работа с сетью > HttpClent. Как полуить и отправить cookies?


Автор: unkis 10.1.2009, 23:44
Ребята, как с помощью HttpClient с начало получить cookies а потом их же и отправить?
 smile 

Автор: LSD 11.1.2009, 01:14
http://hc.apache.org/httpclient-3.x/cookies.html

Обычно алгоритм такой:
 - с сайта запрашивается некая страничка
 - при первом обращении сайт устанавливает куку сессии
 - при дальнейших обращениях она просто передается
или
 - клиент запрашивает страничку авторизации
 - при первом обращении сайт устанавливает куку сессии
 - клиент отправляет данные авторизации (логин/пароль) на сервер
 - сервер отмечает у себя внутри, что сессия такая-то принадлежит пользователю такому-то
 - при необходимости сервер может установить еще куки

Автор: unkis 11.1.2009, 13:12
Объясните почему такой код не садит cookies?
        
Код

HttpClient httpClient = new HttpClient();
        httpClient.getParams().setContentCharset(DEFAULT_CHARSET);
        httpClient.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
     
        // Загрузка страницы с запросом методом GET
        GetMethod getMethod = new GetMethod(SITE_ROOT + URL_PARAM);
        getMethod.getParams().setContentCharset(SITE_CHARSET);
        getMethod.setRequestHeader("User-Agent","Mozilla/5.0 (compatible; MSIE 6.0; Windows NT)");
        
        HttpState state = new HttpState();
         Cookie[] c = {new Cookie("www.lacentrale.fr", "NAPP", "100")};
         state.addCookies(c);
         httpClient.setState(state);

Автор: LSD 11.1.2009, 13:25
Исправь домен на ".lacentrale.fr".

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)