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


Автор: Rxd 13.9.2013, 14:52
Приветствую! Очень нужна ваша помощь. После отправления пост запроса с логином\паролем на сайт , в ответе содержаться только следующие куки:

Код

HTTP/1.1 302 Found
Date: Fri, 13 Sep 2013 11:43:54 GMT
Server: Apache
Set-Cookie: pirates=f0faec5f0864e38554b036a38320e723; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
P3P: CP="CAO PSA OUR"
Set-Cookie: aid=333; expires=Tue, 12-Nov-2013 11:43:54 GMT; path=/
Set-Cookie: aip=13568721723; expires=Tue, 12-Nov-2013 11:43:54 GMT; path=/
Set-Cookie: aig=deleted; expires=Thu, 13-Sep-2012 11:43:53 GMT; path=/
Set-Cookie: acr=722; expires=Tue, 12-Nov-2013 11:43:54 GMT; path=/
Set-Cookie: aid=333; expires=Tue, 12-Nov-2013 11:43:54 GMT; path=/
Set-Cookie: aip=13568721723; expires=Tue, 12-Nov-2013 11:43:54 GMT; path=/
Set-Cookie: aig=deleted; expires=Thu, 13-Sep-2012 11:43:53 GMT; path=/
Set-Cookie: acr=722; expires=Tue, 12-Nov-2013 11:43:54 GMT; path=/
Location:http://eu2.piratestorm.bigpoint.com/GameAPI.php?req=YTo1OntzOjY6ImFjdGlvbiI7czoyMToicG9ydGFsLmxvZ2luQnlDcnlwdElkIjtzOjEyOiJsb2dpbkNyeXB0SWQiO3M6M....
Vary: Accept-Encoding,User-Agent
Content-Encoding: gzip
Content-Length: 20
Content-Type: text/html; charset=UTF-8
X-XTM-Node: pool-49-www-023199
Connection: Keep-Alive
Keep-Alive: timeout=30000, max=99999



Использую Idhttp . Как получить значение Location из ответа? Сайт piratestorm.ru\14 . Надеюсь на вашу помощь.

Автор: Illusion Dolphin 13.9.2013, 15:34
Не так ли?
Код

IdHTTP.Response.Location

Автор: Rxd 13.9.2013, 16:39
Спасибо, попробую, но вообще сама авторизация какая-то необычная, уже сколько времени голову над ней ломаю

Автор: Illusion Dolphin 13.9.2013, 16:47
А я не вижу ничего необычного - ушли логин\пароль, установили куки и 302 редирект. Всё обычно.

Автор: Rxd 13.9.2013, 16:50
Цитата(Illusion Dolphin @ 13.9.2013,  16:47)
А я не вижу ничего необычного - ушли логин\пароль, установили куки и 302 редирект. Всё обычно.

У меня Idhttp при Post-запросе к правильному адрему выбивает ошибку "http/1.1 302 Found", но handleRedirects=True, может в этом ошибка

Автор: Illusion Dolphin 13.9.2013, 20:15
Цитата

У меня Idhttp при Post-запросе к правильному адрему выбивает ошибку "http/1.1 302 Found"

Что кидает ошибку - это "специфичная реализация" от инди. Коды 3хх это просто редирект и никакая не ошибка. 
Цитата

handleRedirects=True

Тогда оно должно просто следовать по этому адресу и загрузить в вашем случае "http://eu2.piratestorm.bigpoint.com/GameAPI.php?req=YTo1OntzOjY6ImFjdGlvbiI7czoyMToicG9ydGFsLmxvZ2luQnlDcnlwdElkIjtzOjEyOiJsb2dpbkNyeXB0SWQiO3M6M...." Попробуйте handleRedirects = false и при ошибке (ловите ту которая падает) - вытаскивайте IdHTTP.Response.Location

Автор: Rxd 13.9.2013, 21:33
Спасибо огромное, выручили!

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