Здравствуйте. Авторизуюсь на сайте с помощью подобного кода: Code: Http := TIdHTTP.Create(Self); CM := TidCookieManager.Create(Http); responders:=TStringList.Create; Http.AllowCookies := true; Http.CookieManager := CM; Http.HandleRedirects := true; Http.Request.Host:='xxx.com/'; Http.Request.UserAgent:='Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.10) Gecko/2009042316 Firefox/3.0.10'; Http.Request.Accept:='Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'; Http.Request.AcceptLanguage:='ru,en-us;q=0.7,en;q=0.3'; Http.Request.AcceptCharSet:='windows-1251,utf-8;q=0.7,*;q=0.7'; Http.Request.Referer:='http://xxx.com/'; mmo1.Text:= http.Post('http://xxx.com/', responders); авторизуюсь успешно, все окей но почему то куки не сохраняются. Хотя вернее будет сказать сохраняются, но допустим если к тому коду добавить еще Code: mmo1.Text:= http.get('http://xxx.com/'); то уже как будто Я не авторизован. Хотя вроде во всех мануалах где Я читал написано что достаточно так прописать Code: CM := TidCookieManager.Create(Http); Http.AllowCookies := true; Http.CookieManager := CM; и куки с проблем не будет..отнюдь.. Даже незнаю в чем может быть проблема..Помогите пожалуйста Инди последней версии, делфи 7
Обрати внимание, что правильно писать не так: Code: Http.Request.Host:='xxx.com/'; а так: Code: Http.Request.Host:='xxx.com'; Если не ошибаюсь, то куки в TidCookieManager зависят от хоста. То есть каждому хосту принадлежат свои куки. Проверь, одинаковые ли у тебя хосты перед вызовами Get и Post запросов.
иногда сервер выдает кривые куки. например когда я прогу для контакта писал, я исправлял куки. там было domain=.vkontakte.ru точка в начале домена недопустима и idhttp не может хранить такие куки.
хотя это неверное предположение. Если бы такая ошибка была, то и автоизация бы не прошла.. прошу прощения
иногда куки могут не отображаться в ответных заголовках от сервера. в общем HTTP Analyzer тебе в помощь)
куки могу просмотреть, но толку от этого? Весь все равно повторно авторизоваться с ними не получается хз почему
ну блин постоянно же все спрашивают. Точно не помню, но там где-то в CookieCollection надо устанавливать что-то вроде Path := '/'