Модераторы: Snowy, Poseidon, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблемы с логином на сайт, собсно топик 
:(
    Опции темы
Snowy
Дата 13.7.2006, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 53
Всего: 484



Количество редиректов можно уменьшить, назначив TIdHttp.RedirectMaximum := ... 
PM MAIL   Вверх
papaP
Дата 13.7.2006, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 10.7.2006

Репутация: нет
Всего: нет



Искреннее спасибо всем, кто помогал мне, но походу этот ИНДИ - полное г..но(а может конечно и у меня руки не оттуда растут), но я всегда относился к полной "автоматике" с подозрением. Ладно, это все лирика и возможно усталость от того, что над проблемой, которая не стоит выеденного яйца бьюсь уже ... неделю.
Snowy,  огромнейшая просьба к Тебе! вот тестовый логин на http://www.gotdotnet.ru/:
testLogin
test
вот мой код:
Код

function TForm1.ExtractViewState(content: String): String;
var
  rViewState:   TRegExpr;
begin
  Result := '';
  rViewState := TRegExpr.Create();
  rViewState.ModifierI := true;
   rViewState.Expression := 'name=\"__VIEWSTATE\"\svalue=\"([\dA-Za-z\+\=\-]+)\"';
  if rViewState.Exec(content) then
  begin
       Result := Result + rViewState.Match[1];
   end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  str,str2:TStringList;
  ms: TMemoryStream;
  viewState : String;
begin
  str:=TStringList.Create;
  str2:=TStringList.Create;
  ms := TMemoryStream.Create;
  IdHTTP1.Request.UserAgent := 'Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322; .NET CLR 2.0.40607)';
  viewState := HTTPEncode( ExtractViewState(IdHTTP1.Get('http://www.gotdotnet.ru/')));
  str.Add('_ctl0:_ctl0:_ctl0:txtUsername=testLogin');
  str.Add('_ctl0:_ctl0:_ctl0:txtPassword=test');
  str.Add('__VIEWSTATE='+ viewState);
  str.Add('_ctl0:_ctl0:_ctl0:btnLogin='+ HTTPEncode('Вход'));
 try
   IdHTTP1.Request.ContentType := 'application/x-www-form-urlencoded';
   IdHTTP1.Post('http://www.gotdotnet.ru/', str, ms);
   ms.Position := 0;
   str2.LoadFromStream(ms);
   str2.SaveToFile('c:\1.htm');
 finally
     ms.Free; str.Free;
 end;
end;


для HTTPEncode подключаю HTTPapp,
на форму кинул печенюшки и связал их  с моим idHTTP1
HandleRedirects := true
hoForceEncode := true

И наконец,получаемый результат:
пустая страница, а если изменить пароль или логин на неверный, то страница с заполненным полем логин и красным полем пароль.

Буду очень признателен, если ты проверишь у себя... Если и ты получишь такой же как у меня результат, то все перестану мучаться с ИНДИ.
Большое спасибо, еще раз извини, что отнимаю время.   

Это сообщение отредактировал(а) Girder - 13.7.2006, 16:54
PM MAIL   Вверх
papaP
Дата 13.7.2006, 18:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 10.7.2006

Репутация: нет
Всего: нет



Вот что сниффер показывает после отправки метода пост:
HTTP/1.1 302 Found
Connection: keep-alive
Date: Thu, 13 Jul 2006 15:36:43 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
X-AspNet-Version: 1.1.4322
Location: /Default.aspx
Set-Cookie: GDNAuth=EDB186FB9E6577756470358A50B039C3B504012D9B7D10CB8AA7DDB0060C58E57A5203895F2A2792CB02CCB37108724307980379F524EBBBFEC89DDBA69DDE9784C5116F7455C05C; domain=gotdotnet.ru; path=/;HttpOnly
Cache-Control: public, max-age=5
Expires: Thu, 13 Jul 2006 15:36:46 GMT
Last-Modified: Thu, 13 Jul 2006 15:36:41 GMT
Vary: *
Content-Type: text/html; charset=windows-1251
Content-Length: 130 
PM MAIL   Вверх
papaP
Дата 13.7.2006, 19:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 10.7.2006

Репутация: нет
Всего: нет



Так, вот еще взял строку параметров из сниффера(в смысле когда логинюсь на сайт со странички) вставил эту строку в пост и запустил... получил все ту же пустую страницу. Посмотрел, что получаю(предыдущий мой пост), та вот как я понял что в Idhttp стоит ексепшон на строку HTTP/1.1 302 Found! Вот он ее встечает и дальше не идет, то есть соответственно печенюшки мы не получаем.
Щас думаю взять сорс этого модуля и переделать... 
PM MAIL   Вверх
mogikan
Дата 13.7.2006, 20:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 7.6.2006

Репутация: нет
Всего: нет



Цитата(papaP @ 12.7.2006,  16:28)
Если ты имеешь ввиду мыло, то проблем никаких - юзай  TIdPOP.


IdPOP компонент не нуждаеться в етом программе. Програм должен открыт  почту через WebMail. В етот системах нет РОР сервер smile 
В ГуглТалке тоже есть такой вешш. Когда кликните на надпис автоматически открывается ссылка веб почту. 
PM MAIL   Вверх
papaP
Дата 14.7.2006, 06:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 19
Регистрация: 10.7.2006

Репутация: нет
Всего: нет



Цитата(mogikan @ 13.7.2006,  20:57)
Цитата(papaP @ 12.7.2006,  16:28)
Если ты имеешь ввиду мыло, то проблем никаких - юзай  TIdPOP.


IdPOP компонент не нуждаеться в етом программе. Програм должен открыт  почту через WebMail. В етот системах нет РОР сервер smile 
В ГуглТалке тоже есть такой вешш. Когда кликните на надпис автоматически открывается ссылка веб почту.

Я в делфах сильно разочаровался... Но если у тебя не стоит условие, что реализовать ТОЛЬКФО на Делфах - могу помочь решить твою проблему на СИ шарпе 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0469 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.