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

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

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

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

Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Сообщения
1,151
Симпатии
222
Баллы
155
VK
Код:
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.
думаю предельно ясно,как все работает!



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

Пароль на архив
[HIDE=1]Guardianelinks.com[/HIDE]
 
Последнее редактирование:
Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Сообщения
1,151
Симпатии
222
Баллы
155
VK
W Оффлайн

Win1337

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

Sascha

Заместитель Администратора
Команда форума
Администратор
Сообщения
1,058
Симпатии
272
Баллы
155
Подскажи,что ты добавил в uses
(LIB)
что это? у меня нет такого.

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

вот скачай и установи и всё будет так в архиве (LIB) компонент есть.
 
W Оффлайн

Win1337

Знающий кодер
Принятый Кодер
Сообщения
3
Симпатии
0
Баллы
28

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

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

Sascha

Заместитель Администратора
Команда форума
Администратор
Сообщения
1,058
Симпатии
272
Баллы
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

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

Sascha

Заместитель Администратора
Команда форума
Администратор
Сообщения
1,058
Симпатии
272
Баллы
155
Lomanu4 Оффлайн

Lomanu4

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

Inquisitor

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

Lomanu4

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

Inquisitor

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

Lomanu4

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

Overovv

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

Lomanu4

Команда форума
Администратор
Сообщения
1,151
Симпатии
222
Баллы
155
VK
Lomanu4 Оффлайн

Lomanu4

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

zloy

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