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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.08.2011, 13:01   #1
webber9989
dimgunkin
Форумчанин
 
Аватар для webber9989
 
Регистрация: 06.05.2010
Сообщений: 112
По умолчанию Авторизация webmoney mini. Маленький вопросик

Код:
procedure TForm1.Button2Click(Sender: TObject);
var
data:tstringlist;
page2:string;
begin

data:=tstringlist.Create;
IdHttp1.handleRedirects:=True;

data.Add('__LASTFOCUS=');
data.Add('__EVENTTARGET=');
data.Add('__EVENTARGUMENT=');
data.Add('__LBD_VCT='+Memo2.Text);
data.Add('__LBD_SGC_login_ctl00_cph_captcha_captcha=0');
data.Add('__VIEWSTATE='+Memo3.Text);
data.Add('__EVENTVALIDATION='+Memo5.Text);
data.Add('ctl00$cph$ddlAuthMethod=Логина и пароля');
data.Add('ctl00$cph$tbLogin='+Edit1.Text);
data.Add('ctl00$cph$tbPassword='+Edit2.Text);
data.Add('ctl00$cph$Captcha$tbCaptcha='+Edit3.Text);

page2:=idhttp1.Post('https://mini.webmoney.ru/login.aspx?ReturnUrl=%2fdashboard.aspx',data);

Memo4.Text:=page2;

end;
Всё правильно парсит, все данные есть.

Если Редирект выключен то пишет ошибку:
HTTP/1.1 302 found.

Если включить редирект, то в Memo4 выводит чистый лист...

Смена ссылки _https://mini.webmoney.ru/login.aspx?ReturnUrl=%2fdashboard.a spx на _https://mini.webmoney.ru/login.aspx ничего не меняет...
mail: dimgunkin@gmail.com
skype: dimgunkin
icq: 684-795-212
webber9989 вне форума Ответить с цитированием
Старый 09.08.2011, 23:12   #2
record222
Форумчанин
 
Регистрация: 23.09.2009
Сообщений: 127
По умолчанию

Не проверял, но походу должно все работать.
Выводит чистую ссылку так как на ее идет запрос. Если запрос верный идет редирект на твой аккаунт в webmony.
Page2 будет пуст так как редирекнутую страницу он не покажет...
Код:
Idhttp.response.responsetext;
- вроде так можно.
А еще лучше посмотри через сниффер как работает твое ПО. авторизация должна работать.
record222 вне форума Ответить с цитированием
Старый 11.08.2011, 10:04   #3
webber9989
dimgunkin
Форумчанин
 
Аватар для webber9989
 
Регистрация: 06.05.2010
Сообщений: 112
По умолчанию

Сделал так:
Код:
page2:=idhttp1.post('https://mini.webmoney.ru/login.aspx?ReturnUrl=%2fdashboard.aspx',data);
if pos('302', Idhttp1.response.responsetext) > 0 then
begin
Memo4.Text:=idhttp1.get('https://mini.webmoney.ru/dashboard.aspx');
end;
Ничего не изменилось, при таком варианте как выше, get запрос на _https://mini.webmoney.ru/dashboard.aspx выдает страницу логина...

И вот приложу сниффер:


mail: dimgunkin@gmail.com
skype: dimgunkin
icq: 684-795-212
webber9989 вне форума Ответить с цитированием
Старый 11.08.2011, 19:16   #4
record222
Форумчанин
 
Регистрация: 23.09.2009
Сообщений: 127
По умолчанию

Так что Вам не нравиться не могу понять! Авторизация работает.
После того как вышла ошибка 302 делаем переход на страницу например с кошельками или настройккми методом get и выводим исходный код в мемо...

Да и еще одно!!! Ответ сервера выводиться вот так:
Код:
http1.response.responsecode;
А вот это должно быть так
Код:
http1.handleRedirects:=False;
If (302, http1.response.responsecode) <> 0 then

Последний раз редактировалось record222; 12.08.2011 в 12:38.
record222 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с капчей [mini.webmoney.ru] webber9989 Работа с сетью в Delphi 4 09.08.2011 09:15
Авторизация кошелька в Webmoney Gorychev Свободное общение 8 24.01.2010 12:31
Один маленький вопросик:) Наташенька Общие вопросы C/C++ 3 24.09.2009 20:21
Один маленький вопросик! Как написать функцию доступа к массиву типа char:) Наташенька Общие вопросы C/C++ 3 22.05.2009 16:12
Маленький вопросик))) Fintos Компьютерное железо 6 29.04.2009 18:54