Форум: "Сети";
Текущий архив: 2013.03.22;
Скачать: [xml.tar.bz2];
ВнизПроблема с логином на сайте (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;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.076 c