Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Проблема с логином на сайте (Indy)   Найти похожие ветки 

 
Usov ©   (2009-10-28 14:21) [0]

Здравствуйте, не получается залогиниться на сайте letitbit.net, может кто подскажет какую то идею.
Delphi7 + Indy 10.2.3
На форме лежит IdHTTP1 и к нему привязан IdCookieManager1, в компонента IdHTTP1 включены свойсва AllowCookies и HahdleRedirects. Логин и пароль в примере реальные и их можно использовать.

procedure TForm1.Button1Click(Sender: TObject);
var
 sl: TStringList;
begin
 sl := TStringList.Create;
 // получаем куки
 Memo1.Text := IdHTTP1.Get("http://letitbit.net/login.php");
 Memo1.Lines.SaveToFile("c:\1.html");

 sl.Add("log=etotest");
 sl.Add("pas=etotest");
 sl.Add("inout=%C2%F5%EE%E4);

 // логинимся
 IdHTTP1.Request.Referer := "http://letitbit.net/login.php";
 Memo1.Text := IdHTTP1.Post("http://letitbit.net/tmpl/login.php", sl);
 Memo1.Lines.SaveToFile("c:\2.html");
 // необязательно, проверка залогинились ли
 Memo1.Text := IdHTTP1.Get("http://letitbit.net");
 Memo1.Lines.SaveToFile("c:\3.html");

 sl.Free;
end;


Запросы и ответы сниферил, все идентичное броузеру, но логина не происходит. Сдругими сайтами проблем небыло.


 
brother ©   (2009-10-29 04:37) [1]

> IdHTTP1.

там есть свойство- строка идентификации - почитай какие они бывают, и прикинься например мозиллой)


 
brother ©   (2009-10-29 04:39) [2]

 With IdHTTP1 do
 begin
   Request.UserAgent:= "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; " +
     "rv:1.9.0.7) Gecko/2009021910 Firefox/3.0.7";
 end;

например...


 
Usov ©   (2009-10-29 09:37) [3]

не катит, это я прописываю в первую очередь


 
Дмитрий Белькевич   (2009-10-29 18:03) [4]

>Запросы и ответы сниферил, все идентичное броузеру, но логина не происходит. Сдругими сайтами проблем небыло.

Что-то неверится. Байты везде одинаковые (с). Что-то отдаёте не так в заголовках http.


 
Usov ©   (2009-10-29 22:27) [5]

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


 
Usov ©   (2009-10-29 22:27) [6]

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


 
sniknik ©   (2009-10-29 23:21) [7]

> разбираюсь пока дальше...
до сих пор? блин, а я то решил что вопрос "шутка", ну и типа скрытой рекламы сайту...  

все логиниться, только вот это sl.Add("inout=%C2%F5%EE%E4); убери.


 
Usov ©   (2009-10-30 01:01) [8]

покажи пожалуйста свой IdCookieManager.pas
вот мой: http://usov.ucoz.ru/files/IdCookieManager.pas


 
Usov ©   (2009-10-30 18:53) [9]

проблема решена: IdCookieManager заточен под работу с куками стандарта RFC2109 а на этом сайте куки не соответствуют этому стандарту, поэтому необходимо или переделывать IdCookieManager или парсить вручную куки.


 
sniknik ©   (2009-10-30 20:09) [10]

> покажи пожалуйста свой IdCookieManager.pas
http://letitbit.net/download/1244.c10ff015f46ee53bda2c56194/IdCookieManager.pas.html


 
sniknik ©   (2009-10-31 12:11) [11]

> или переделывать IdCookieManager или парсить вручную куки.
или поставить "правильный" indy
только обратил внимание
> Delphi7 + Indy 10.2.3
у меня последняя "родная" версия 10.1.5 (т.е. то что лежало у них на сайте перед тем как проект закрыли. его кто то вроде стал поддерживать но я за этим не слежу...)

p.s. файлы реально отличаются.


 
Usov ©   (2009-10-31 18:17) [12]

Да, старый добрый IdCookieManager :) твоему уже больше 2 лет.
Я и сам на последнюю не хочу переходить, нашел для себя самую стабильную и лишь изредка подшаманиваю ее.



Страницы: 1 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.053 c
15-1338665541
Rouse_
2012-06-02 23:32
2013.03.22
Ребят, а что за фильм?


15-1345928148
Дмитрий С
2012-08-26 00:55
2013.03.22
Умер Нил Армстронг – первый человек, побывавший на Луне


1-1305191148
sniknik
2011-05-12 13:05
2013.03.22
1С8 вызов функции по имени...


15-1354048202
Юрий
2012-11-28 00:30
2013.03.22
С днем рождения ! 28 ноября 2012 среда


2-1335703270
Vik
2012-04-29 16:41
2013.03.22
Создание текстовых файлов последовательно.