• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

Авторизация в ВК (Authorization VK API) Delphi

Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,481
Баллы
155
Код:
unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls,httpsend,ssl_openssl,lib;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Button1: TButton;
    Memo1: TMemo;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
email,pass,response,msg:string;
    { Public declarations }
  end;

var
  Form1: TForm1;
   token:string;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
s2,userid:string;
begin
email:=Edit1.Text;
pass:=Edit2.Text;
response:=send('GET','https://oauth.vk.com/token?grant_type=password&client_id=2274003&client_secret=hHbZxrka2uZ6jB1inYsH&username='+email+'&password='+pass+'&captcha_key=&captcha_sid=');
msg:=response;
if Pos('token',response) <> 0 then
  begin

    s2:=copy(response, pos('access_token":"', response), pos('","expires_in', response)-3);
    delete(s2, 1, 15);
     token:=s2;
Memo1.Lines.Add(msg);
msg:=token;

userid:=s2;
s2:=Copy(response,Pos('user_id":',response),Pos('}',response));
Delete(s2,1,9);
Delete(s2,Pos('}',s2),1);
userid:=s2;
Memo1.Lines.Add(msg);
msg:=userid;
Memo1.lines.add (msg);


    end else
begin
    memo1.lines.add('Error');
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
response:= send  ('GET','https://api.vk.com/method/friends.get?uid=95921229&access_token='+token);
msg:=response;
Memo1.Lines.Add(msg)
end;

end.
думаю предельно ясно,как все работает!



Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

Пароль на архив
Для просмотра содержимого вам необходимо авторизоваться.
 
keyONE Оффлайн

keyONE

Знающий кодер
Принятый Кодер
Регистрация
12 Май 2015
Сообщения
2
Баллы
28
Полезная инфа
 
Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,481
Баллы
155
W Оффлайн

Win1337

Знающий кодер
Принятый Кодер
Регистрация
10 Июн 2015
Сообщения
3
Баллы
28
Подскажи,что ты добавил в uses
(LIB)
что это? у меня нет такого.
 
Sascha Оффлайн

Sascha

Заместитель Администратора
Команда форума
Администратор
Регистрация
9 Май 2015
Сообщения
1,549
Баллы
155

Вложения

W Оффлайн

Win1337

Знающий кодер
Принятый Кодер
Регистрация
10 Июн 2015
Сообщения
3
Баллы
28

Пожалуйста Авторизируйтесь или Зарегистрируйтесь для просмотра скрытого текста.

вот скачай и установи и всё будет так в архиве (LIB) компонент есть.
Спасибо,помогло
Но теперь другая проблема встала.
Что бы использовать данный метод авторизации нужно оказывается проходить проверку прилоежния в VK
Как можно по другому сделать авторизацию в вк?
 
Sascha Оффлайн

Sascha

Заместитель Администратора
Команда форума
Администратор
Регистрация
9 Май 2015
Сообщения
1,549
Баллы
155
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
s: string;
http: TIdHTTP;
begin
http := TIdHTTP.Create(nil);
http.HandleRedirects:=True;
http.Request.UserAgent :=
'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Firefox/38.0';
try
s := http.Get('http://vk.com/login.php?m=1&email=' + Edit1.Text +
'&pass=' + Edit2.Text);
Form1.Memo1.Lines.Add(s);
except
if http.ResponseCode = 302 then
s := http.Get('http://vk.com' + http.Response.Location);
end;

if Pos('logout', s) <> 0 then
ShowMessage('OK')
else
ShowMessage('NOT');

Form1.Memo1.Lines.Add(s);
http.Free;

end;
Попробуй так
 
W Оффлайн

Win1337

Знающий кодер
Принятый Кодер
Регистрация
10 Июн 2015
Сообщения
3
Баллы
28
А из такого варианта разве мы сможем дальше пользоваться API через запросы?
 
Sascha Оффлайн

Sascha

Заместитель Администратора
Команда форума
Администратор
Регистрация
9 Май 2015
Сообщения
1,549
Баллы
155
Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,481
Баллы
155
А из такого варианта разве мы сможем дальше пользоваться API через запросы?
Да,главное смотреть документацию и в определенный api запрос вставлять токен.
 
I Оффлайн

Inquisitor

Знающий кодер
Принятый Кодер
Регистрация
28 Июн 2015
Сообщения
2
Баллы
28
Неполучается, неверный при входе. Вроде бы вк поменяла что то с авторизацией. Как теперь сделать ?
 
Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,481
Баллы
155
Неполучается, неверный при входе. Вроде бы вк поменяла что то с авторизацией. Как теперь сделать ?
Модератор Sascha добавил ответ на форуме
 
I Оффлайн

Inquisitor

Знающий кодер
Принятый Кодер
Регистрация
28 Июн 2015
Сообщения
2
Баллы
28
УАААУУУУУУУУУУУУУУ ТЫ БОГ, КРУТОЙ ОТВЕТ Lomanu4
 
Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,481
Баллы
155
Неполучается, неверный при входе. Вроде бы вк поменяла что то с авторизацией. Как теперь сделать ?
Все осталось без изменений у меня все заходит,смотри внимательно видео!
 
O Оффлайн

Overovv

Знающий кодер
Принятый Кодер
Регистрация
6 Авг 2015
Сообщения
1
Баллы
28
ошибку выдает
aptcha_sid= HTTP/1.1
Host: oauth.vk.com:443
Keep-Alive: 300
Connection: keep-alive
что может быть?
 
Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,481
Баллы
155
Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,481
Баллы
155
Дорогие пользователи,если мы будем замечать ответы типовой :(цифры ,круто,спасибо и т.д )для набивания сообщений ,мы будем блокировать таких на 3 дня.
 
A Оффлайн

Arkan0ID

Принятый Кодер
Регистрация
19 Янв 2016
Сообщения
1
Баллы
40
Найс
 
S Оффлайн

SergeyTechno

Принятый Кодер
Регистрация
23 Янв 2016
Сообщения
1
Баллы
28
спасибо за туториал
 
zloy Оффлайн

zloy

Принятый Кодер
Регистрация
9 Янв 2016
Сообщения
38
Баллы
50
а что с проектом не так?
закидываю Project1.dproj всё пусто кода 0 в Unit1.pas
зато тут он есть Unit1.pas.cbk
 
Вверх Снизу