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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.06.2011, 13:53   #1
webber9989
dimgunkin
Форумчанин
 
Аватар для webber9989
 
Регистрация: 06.05.2010
Сообщений: 112
По умолчанию Авторизация на mail.ru. Ошибка HTTP/1.1 302 OK.

Работаю в delphi xe.
Последний инди и библы. (спросите зачем мне ssl, когда работа с http? Отвечу, после успешной авторизации делаю запрос на деньги@mail.ru, а там протокол https)

Не пойму в чем трабла, написал свой код, вчера сидел весь день, так ничего и не добился, пошел сюда и нашел следующий код 100% рабочий из темы модератора.

Код:
procedure TForm1.Button1Click(Sender: TObject);
var params,responseres:tstringlist;
begin
params:=TStringList.Create;
responseres:=TStringList.Create;
try
params.Add('Login=webber9989');
params.Add('Domain=mail.ru');
params.Add('Password=1234');
responseres.Text:=idhttp1.Post('http://win.mail.ru/cgi-bin/auth',params);
if Pos('logout',responseres.Text)>0 then
  ShowMessage('Авторизовались!');
finally
params.free;
responseres.free;
end;
end;
думал может у меня че не так, ага, не тут-то было...
Та же ошибка: HTTP/1.1 302 OK.



Очень надеюсь на вас, уважаемые форумчане...
mail: dimgunkin@gmail.com
skype: dimgunkin
icq: 684-795-212
webber9989 вне форума Ответить с цитированием
Старый 26.06.2011, 14:07   #2
Arsenx777
Delphi, c++, php
Форумчанин
 
Аватар для Arsenx777
 
Регистрация: 14.03.2011
Сообщений: 288
По умолчанию

Вот поробуйте что-то типо этого
Код:
var
  info: TStringList;
  dan: TStringStream;
begin
  try
    info := TStringList.Create;
    dan := TStringStream.Create('');
    info.Add('Login=webber9989');
    info.Add('Password=1234');
    IdHTTP1.Post('http://win.mail.ru/cgi-bin/auth',info,dan);
    Showmessage(dan.DataString);
  finally
    begin
      dan.Free;
      info.Free;
end;
Мудр тот, кто знает нужное, а не многое.

Arsenx777 вне форума Ответить с цитированием
Старый 26.06.2011, 14:10   #3
webber9989
dimgunkin
Форумчанин
 
Аватар для webber9989
 
Регистрация: 06.05.2010
Сообщений: 112
По умолчанию

А что изменилось-то?
Там походу дела с куками траблы, а с ними я не дружу, помогите плз.

Да, так и знал, нашел готовое решение на ачате, дело было в куках, как я и предполагал. Всем спасибо.
Решение:

Код:
procedure TForm1.Button3Click(Sender: TObject);
var
p1,p2: Integer;
cook: String;
begin
Memo1.Text:= IdHTTP1.Get('http://games.mail.ru/mru/auth/login?login=lerchik24.11@mail.ru&password=lerik1&foreign=');
if Pos('Mpop', IdHTTP1.Response.RawHeaders.Text) > 0 then
begin
p1:= Pos('Mpop', IdHTTP1.Response.RawHeaders.Text);
p2:= Pos('.ru:', IdHTTP1.Response.RawHeaders.Text)+5;
cook:= Copy(IdHTTP1.Response.RawHeaders.Text, p1, p2-p1);
ShowMessage(cook);
IdHTTP1.Request.CustomHeaders.Add('Cookie: ' + cook);
end;
Memo2.Text:= IdHTTP1.Get('http://mail.ru');
end;
mail: dimgunkin@gmail.com
skype: dimgunkin
icq: 684-795-212

Последний раз редактировалось webber9989; 26.06.2011 в 14:19.
webber9989 вне форума Ответить с цитированием
Старый 28.06.2011, 22:10   #4
AquaKlaster
Delphi,Python,PHP
Форумчанин
 
Аватар для AquaKlaster
 
Регистрация: 04.04.2009
Сообщений: 138
По умолчанию

HTTP 302 - это редирект(перенаправление на другую страницу) что бы ошибки не было - idHTTP.HandleRedirects := True; тоесть включить автоматическую переадресацию
AquaKlaster вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Авторизация агента mail.ru grominfo Работа с сетью в Delphi 3 19.06.2011 02:17
авторизация mail.ru DeDoK Работа с сетью в Delphi 1 18.09.2010 23:36
авторизация на mail.ru tranceman PHP 1 11.10.2009 20:21
Авторизация на mail.ru Des Работа с сетью в Delphi 4 27.04.2009 17:50