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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.02.2012, 13:31   #1
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию Не могу авторизоваться вконтакте

Вроде все просто,а выдает ошибку...
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
html:string;
begin
IdHttp1.HandleRedirects:=true;
try
html:=IdHttp1.Get('vk.com/login.php?email'+Edit1.Text+'&pass='+Edit2.Text);
except
end;
If Pos('logout',html)<>0 then
Memo1.Lines.Add('Done')
else
Memo1.Lines.Add('False');
end;
Помогите кто-нить)
xrenomx вне форума Ответить с цитированием
Старый 03.02.2012, 13:40   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,434
По умолчанию

Кукисы кукисы.. Года 2 назад, этот код работал.
Человек_Борща вне форума Ответить с цитированием
Старый 03.02.2012, 13:51   #3
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию

...мне почему-то пишет ошибку сокета #10061
xrenomx вне форума Ответить с цитированием
Старый 03.02.2012, 14:03   #4
Delphi_ProGer
Форумчанин
 
Регистрация: 30.10.2010
Сообщений: 524
По умолчанию

Авторизация через m.vk.com

Код:
Log := Idhttp.Get('https://login.vk.com/?act=login&to=&from_host=m.vk.com&from_protocol=http&pda=1&email='+aLogin+'&pass='+aPass);
  if Pos('http://m.vk.com:80/', IdHTTP.URL.URI)<>0 then
//удачно!
Не забудьте подключить IdSSLIOHandlerSocket к IdHTTP.
А также нужны библиотеки libeay32.dll и ssleay32.dll

Последний раз редактировалось Delphi_ProGer; 03.02.2012 в 14:29.
Delphi_ProGer вне форума Ответить с цитированием
Старый 03.02.2012, 14:21   #5
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию

Решил попробовать по-другом...взято отсюда так же не удается :\
Код:
procedure TForm1.Button1Click(Sender: TObject);
var data:tstringlist;
     PageProfile:string;
     error:boolean;
begin
 IdHTTP1.AllowCookies:=true;
 IdHTTP1.HandleRedirects:=false;
 data:=tstringlist.create;
 data.Add('email='+Edit1.Text); // логин для авторизации
 data.Add('pass='+Edit2.Text);  // пароль для авторизации
 data.Add('expire=');
 data.Add('vk=');
 error:=false;
 try
  PageProfile:=IdHTTP1.Post('http://login.vk.com/?act=login', data);
 except
  error:=true;
 end;

 if not(error) then
  begin
   data.Clear;
   data.Add('s='+Copy(PageProfile, Pos('value', PageProfile)+7, 56));
   data.Add('op=slogin');
   data.Add('redirect=1');
   data.Add('expire=0');
   data.Add('to=');
   IdHTTP1.HandleRedirects:=true;
   try
    PageProfile:=IdHTTP1.Post('http://vkontakte.ru/login.php', data);
   except
   end;
   Memo1.Lines.Add('Авторизация удалась');
  end
 else
  Memo1.Lines.Add('Авторизация не удалась');

 Data.Free;
end;
xrenomx вне форума Ответить с цитированием
Старый 03.02.2012, 14:34   #6
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Цитата:
Года 2 назад, этот код работал.
почему он и щас работает просто надо обработать исключение
Код:
try
html:=IdHttp1.Get('vk.com/login.php?email'+Edit1.Text+'&pass='+Edit2.Text);except
if IdHttp1.resultcode=302 then begin
///тут надо вытащит кукуи из raw я просто код не помню до конца на форуме есть тем там все описано про куки
end else showmessage('Не удалось');
Кольша вне форума Ответить с цитированием
Старый 03.02.2012, 14:38   #7
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию

Так уже что-то,но пишет что авторизация не удалась,данные вроде верно ввожу.
Код:
begin
IdHTTP1.AllowCookies:=true;
 IdHTTP1.HandleRedirects:=true;
 try
  html:=IdHTTP1.Get('http://vk.com/login.php?email='+Edit1.Text+'&pass='+Edit2.Text);
 except
 end;
 if Pos('logout', html)<>0 then
  Memo1.Lines.Add('Авторизация удалась')
 else
  Memo1.Lines.Add('Авторизация не удалась');
end;
xrenomx вне форума Ответить с цитированием
Старый 03.02.2012, 15:17   #8
Delphi_ProGer
Форумчанин
 
Регистрация: 30.10.2010
Сообщений: 524
По умолчанию

вам нудно именно на вк.ком?
Delphi_ProGer вне форума Ответить с цитированием
Старый 03.02.2012, 17:36   #9
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию

Ну да,мобильная версия не нужна(
xrenomx вне форума Ответить с цитированием
Старый 04.02.2012, 15:54   #10
xrenomx
Пользователь
 
Аватар для xrenomx
 
Регистрация: 05.02.2011
Сообщений: 63
По умолчанию

Попробовал вот так,тоже не вышло
Код:
var
a:string;
data:TStringList;
begin
Idhttp1.HandleRedirects:=True;
idhttp1.AllowCookies:=true;

Data:=Tstringlist.Create;
Data.Add('q=1');
Data.Add('al_frame=1');
Data.Add('from_host=vk.com');
Data.Add('from_protocol=http');
Data.Add('pass='+Edit1.Text);
Data.Add('email='+Edit2.Text);

a:=IdHTTP1.Post('https://login.vk.com/?act=login', data);
If Pos('logout',a)<>0 then
application.MessageBox('','TRUE',MB_OKCANCEL)
else
application.MessageBox('','FALSE',MB_OKCANCEL);
end;
А вот нашел функцию кука,но че-то я не разобрался с ней и куда ее впихивать тоже не понял.
Код:
var
sBuff:array [1..6000] of char;
Код:
function redirect(sBuff:string):string;
var
text:string;
  Begin
    text:=trim(copy(sBuff,pos('/id',sBuff),pos('Content-Encoding',sBuff)-pos('/id',sBuff)));
    result:=text;
  End;
xrenomx вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу найти ошибку в коде при авторизации вконтакте Arsenx777 Работа с сетью в Delphi 10 27.07.2011 02:44
Не могу авторизоваться Евгений79 Работа с сетью в Delphi 1 23.05.2011 08:53
скрипт вконтакте! не могу заробраться! komersss PHP 0 20.08.2010 10:44
Не могу авторизоваться на сайте(WinInet) Ozerich Общие вопросы C/C++ 0 16.08.2010 14:56
Не могу авторизоваться на HTTPS Yuran Работа с сетью в Delphi 11 18.04.2008 14:19