Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.12.2009, 17:21   #1
FlorentOFF
 
Регистрация: 13.12.2009
Сообщений: 3
По умолчанию Вроде бы проблема в Cookie ...

Здравствуйте! У меня появилась одна проблема, ответа на которую я не нашел ... Сейчас попытаюсь изложить всю суть )

Есть некий сайт, назовем его www.xxx.ru

Мне на нем нужно авторизироваться, при етом введя слово с каптчи. Если посмотреть HTML код страницы авторизации, то можно увидеть, что капча грузится по ссылке www.xxx.ru/getimg.php?i (где i - рандомное число, какте там число, у меня определяет функция)

Если я делаю так: IdHTTP.Get(www.xxx.ru) и смотрю лог, то вижу что мне выдаются куки, и качаю картинку IdHTTP.Get(www.xxx.ru/getinmg.php?i). После просмотра второго лога, кукисы мне не дались. Если напрямую грузить сразу картинку, то опятьже куки мне даются.

Можно сделать вывод, что куки выдает не сам сайт, а скрипт getimg.

После ввода капчи, и ввода логина и пароля, мне нужно нажать на кнопку и отправить все на сервер. На кнопку я нажимаю, но мне приходит ответ что неверно введена капча.

Перед нажатием на кнопку, у меня стоит такой код:

s:= 'Cookie: ';
for i := 0 to IdCookieManager1.CookieCollection.C ount-1 do
s:=s+idcookiemanager1.CookieCollect ion[i].ClientCookie+'; ';
s:=copy(s,1,Length(s)-1); - тут ставил -1, -2 - не помогает.
IdHTTP1.Request.CustomHeaders.Add(s );

По моим соображениям, если все делать в браузере, то при загрузке страницы. ты получешь кукисы, вводишь все, нажимаешь кнопку, и эти жи куки отправляются на сервер.

Так же я пробовал запросом открыть сайт, зацепить от туда куки, и в цикле, каждый раз перед запросом добавлять их. Но мне всегда приходили 10 разных картинок ..

Кто с этим сталкивался? Как можно решить проблему? Просто уже 2 дня гуглю, результатов 0. На вашем форуме не нашел ответа. Буду очень рад, тем кто поможет ))
FlorentOFF вне форума Ответить с цитированием
Старый 14.12.2009, 12:24   #2
Usov
Форумчанин
 
Аватар для Usov
 
Регистрация: 29.09.2009
Сообщений: 228
По умолчанию

Если не прицеплен кукименеджер то цепляй его к IdHttp.
Далее все просто:
1) получаешь первую страницу (при этом значение картинки не важно)
2) получаешь ссылку на картинку
3) делаешь еще один запрос на получение картинки (тут вот важно что на картинке)
4) распознаешь картинку и отправляешь результат на сервер
А колдовать с куками вручную рекомендую только когда уже другого варианта не остается.
Usov вне форума Ответить с цитированием
Старый 23.01.2010, 20:14   #3
s00r
Новичок
Джуниор
 
Регистрация: 23.01.2010
Сообщений: 2
По умолчанию

1. Проблема в том что ссылка на картинку не статична, тоесть если она была www.xxx.ru/getimg.php?72 то в след раз она может быть опять www.xxx.ru/getimg.php?72 а на картинки другое чилсо.
2. С куками колдавать полюбому надо т.к. сервер вначале дает куку, а потом при заходе ее проверяет, из чего кука генериться не известно, она зашифрована.
s00r вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
cookie в javascript Xeon332 JavaScript, Ajax 1 24.05.2009 08:44
TNMHTTP. Использование Cookie. Cool_Wolf Работа с сетью в Delphi 0 06.09.2008 16:46
Проблема с Cookie eldar Работа с сетью в Delphi 5 21.08.2008 13:27
Cookie ошибка N!ckeL PHP 10 13.08.2008 17:52
Необходимо установить Cookie Никки JavaScript, Ajax 1 09.03.2008 02:17