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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.11.2009, 03:11   #1
mnikola2009
 
Регистрация: 26.11.2009
Сообщений: 6
По умолчанию Как обойти перенаправление

Использую компонент idHttp для авторизации на сайте Depositfiles.com. После авторизации получаю ответ о перенаправлении, и неполучается посмотреть например свой баланс? Всё время выбрасивает на страницу авторизации? Помогите разобраться в чем загвоздка? Предварительно сниффером прогонял все через браузер и в idHttp устанавливал соответствующие параметры.
Использую: idHttp, IdAntiFreeze, IdCookieManager. Пробовал на D2009 и D7.
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
t:tstringlist;
begin
    t := TStringList.Create;

        t.Add('go=1'); 
        t.Add('login=wla4870');
        t.Add('password=15071972');

        memo1.Lines.Add(IdHTTP1.Post('http://depositfiles.com/ru/login.php',t));
 
   t.free;
end;
В ответ (в поле Memo) получаю перенаправление, но почемуто оно никуда не перенаправляется:
Код:
<html><head>
<meta http-equiv="refresh" content="5;URL=http://depositfiles.com/gold/">	<!-- -main-redirect- -->
<title>Redirecting</title>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div align="center">
Redirecting... If browser do not redirect you automaticaly<br>
<a id="redirect" href="http://depositfiles.com/gold/">press here</a> </div>
<script language="javascript">
window.location.href = "http://depositfiles.com/gold/";
</script>
</body>
</html>
Далее хочу перейти на следующую страницу чтобы посмотреть свой баланс:
Код:
memo1.Lines.Add(IdHTTP1.get('http://depositfiles.com/ru/gold/bonus_program.php'));
в ответ выбрасывает на страницу авторизации. Как с этим разобратся?
mnikola2009 вне форума Ответить с цитированием
Старый 26.11.2009, 03:41   #2
Voody
Форумчанин
 
Регистрация: 22.06.2009
Сообщений: 310
По умолчанию

Скорее всего проблема в библиотеке Indy. Обновите ее до 10.5.5
Дело наверное в IdCookieManager. В предыдущих версиях он некорректно обрабатывал точку в начале домена (а как раз тут она имеется):
Цитата:
Set-Cookie: autologin=97f......; path=/; domain=.depositfiles.com
Voody вне форума Ответить с цитированием
Старый 26.11.2009, 17:33   #3
mnikola2009
 
Регистрация: 26.11.2009
Сообщений: 6
По умолчанию

Спасибо за подсказку, Indy обновил к 10.5.7. Теперь в ответ получаю три квадратика? Это проблема в кодировке?
mnikola2009 вне форума Ответить с цитированием
Старый 26.11.2009, 17:48   #4
TwiX
Участник клуба
 
Аватар для TwiX
 
Регистрация: 28.07.2009
Сообщений: 1,510
По умолчанию

На D7 такого не должно быть...
Попробуйте осохранить результат запроса в tfilestream, а потом просто откройте полученный файл браузером.
TwiX вне форума Ответить с цитированием
Старый 26.11.2009, 20:22   #5
Voody
Форумчанин
 
Регистрация: 22.06.2009
Сообщений: 310
По умолчанию

Цитата:
Сообщение от mnikola2009 Посмотреть сообщение
Спасибо за подсказку, Indy обновил к 10.5.7. Теперь в ответ получаю три квадратика? Это проблема в кодировке?
покажите заголовки запроса. если там есть IdHTTP1.Request.AcceptEncoding, то уберите
Voody вне форума Ответить с цитированием
Старый 27.11.2009, 01:07   #6
mnikola2009
 
Регистрация: 26.11.2009
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Voody Посмотреть сообщение
покажите заголовки запроса. если там есть IdHTTP1.Request.AcceptEncoding, то уберите
Код:
idhttp1.Request.AcceptEncoding:='deflate, gzip, x-gzip, identity, *;q=0';
Действительно убрал и всё в порядке. Спасибо Вам всем за помощь!
Урааа!
mnikola2009 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как обойти пароль в Windows XP? tonich Безопасность, Шифрование 30 15.11.2011 18:11
Как обойти проверку строки, при компиляции? Лукманов Александр Общие вопросы Delphi 3 03.05.2009 23:57
DOA компоненты, как обойти ошибку? cherry25 БД в Delphi 6 10.03.2009 13:26
Как обойти защиту от прокси? mimitron Свободное общение 4 05.03.2009 10:18