Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 20.12.2010, 23:17   #1
bulldog5293
Участник клуба
 
Регистрация: 13.05.2010
Сообщений: 670
Репутация: 1
По умолчанию Статический Cookie и работа с ним

На N сайте имется статический кукес вида
PHP код:
document.cookie="bablo=1; path=/"hotlog_r+="&c="+(document.cookie?"Y":"N"); 
не замарачиваясь с парсингам делаю поиск на "bablo=1" и дабавляю в cookie, если его нет то собираю передающиеся куки из response, проблема возникает в том что мне статический кук нада протащить с первого get до 3-го гета, попутно собирая другие, как можно оптимизировать такой код?
Код:

begin
try
        FH.get('http://' + FUrl, ss);
          If Pos('bablo=1', ss.datastring) > 0 then
begin
        FH.Request.CustomHeaders.Add('Cookie: '+'bablo=1');
       end
else
        c := FH.Response.RawHeaders.Values['Set-Cookie'];
        c := Copy(c,1,Pos(';',c));
except
        Resume;
        end;
try
        FH.get('http://' + FUrl + 'login.php?r=',S);

          If Pos('bablo=1', s.datastring) > 0 then
begin
        FH.Request.CustomHeaders.Clear;
        FH.Request.CustomHeaders.Add('Cookie: '+c);
        FH.Request.CustomHeaders.Add('Cookie: '+'bablo=1');
       end
else
        FH.Request.CustomHeaders.Clear;
        FH.Request.CustomHeaders.Add('Cookie: '+c);
        except
        Resume;
        end;
      try
 inf.Add('username=' + FLogin);
          inf.Add('password=' + FPassword);
          inf.Add('value="submit"');
        Sleep( random(10)*100+500);
     FH.Request.CustomHeaders.Clear;
        FH.Request.CustomHeaders.Add('Cookie: '+c);
          ain := FH.Post('http://' + FUrl + 'login.php', inf);
         вход := poster(ain);
         finally
         inf.Free;
          end;
try             
        FH.get('http://' + FUrl + вход, st);
 FH.Request.CustomHeaders.Clear;
        FH.Request.CustomHeaders.Add('Cookie: '+c);
except
        Resume;
        end;
          try
         FH.get('http://' + FUrl + 'sites.php', st);
If Pos('bablo=1', st.datastring) > 0 then
begin
        FH.Request.CustomHeaders.Clear;
        FH.Request.CustomHeaders.Add('Cookie: '+c);
        FH.Request.CustomHeaders.Add('Cookie: '+'bablo=1');
       end
else
        FH.Request.CustomHeaders.Clear;
        FH.Request.CustomHeaders.Add('Cookie: '+c);
        except
        Resume;
        end;
     FH.Request.CustomHeaders.Clear;
        FH.Request.CustomHeaders.Add('Cookie: '+c);
        except
        Resume;
        end;

что бы не нада было постоянно проверять и таскать за собой
bulldog5293 вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с cookie(куки), C# LT. Общие вопросы .NET 6 25.06.2010 13:10
sDBLookupComboBox и работа с ним nuevegramodelamor Помощь студентам 0 24.05.2010 23:43
Работа с Cookie Nicker Работа с сетью в Delphi 0 09.04.2010 15:58
ComboBox и работа с ним 54rus Помощь студентам 6 23.07.2009 15:40
Работа со страницами - curl + file_get_contents + cookie domovoi PHP 6 01.03.2009 01:53


16:55.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru