Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > Яндекс.Вебмастер и Яндекс.Метрика через IdHTTP


Автор: GOS 14.3.2012, 20:03
Прошу помощи.

Затеял небольшую программку для отслеживания изменений в панели Яндекс.Вебмастер.

Использую DelphiXE, компоненты Indy.

Прошу не сильно ругать за код(более 4х лет не писал на delphi, вот решил вспомнить былое).

На форме IdHTTP со включенным редиректом и куками
и вот такой код:
Код

  memo1.Text:='';

  IdHTTP1.Request.UserAgent := 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)';
  data := TIdMultiPartFormDataStream.Create;
  StrPage:=IdHTTP1.Post('http://passport.yandex.ru/passport?mode=auth',data);


  Pos1:=Pos('idkey',StrPage);
  if Pos1<>0 then
    Begin
      idkey:=Copy(StrPage,Pos1+14,22);
    End else
    Begin
      idkey:='';
    End;

  data.AddFormField('from',     'passport');
  //data.AddFormField('retpath',  'http://webmaster.yandex.ru');
  data.AddFormField('idkey',    idkey);
  data.AddFormField('display', 'page');
  data.AddFormField('login', 'тут реальный логин');
  data.AddFormField('passwd', 'тут реальный пароль');
  //ata.AddFormField('twoweeks', 'yes');
  //data.AddFormField('timestamp', '');

  memo1.Lines.Add(IdHTTP1.Post('http://passport.yandex.ru/passport?mode=auth',data));


Но после выполнения второго запроса срабатывает редирект на адреса:
http://passport-ckicheck.yandex.ru/passport?mode=ckicheck&idkey=02v1331745696D9c4ObFTX&ncrnd=472023
http://passport.yandex.ru/passport?mode=auth&idkey=7AZ1331745697_86M__Fkh&ncrnd=510558

судя по первой ссылке, что-то не так с куки.

Пожалуйста, помогите разобраться.

Автор: GOS 16.3.2012, 13:29
подогнал timeStamp, Обработал редирект отсылкой запроса GET и авотризовался.....
Всем спасибо, дальше буду думать сам smile

Автор: MetalFan 16.3.2012, 14:47
Цитата(GOS @  16.3.2012,  13:29 Найти цитируемый пост)
Обработал редирект отсылкой запроса GET

А если просто выставить AllowRedirects? или как-то так...
Вообще редиректы индейцы должны сами обрабатывать без проблем.

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