Проект VK API в Delphi. Модуль VK_API обновлен

3 минуты на чтение

Вчера я показал как можно получить информацию о пользователе из его профиля из сети ВК, теперь я эту функцию добавил в модуль VK_API. Это следующая функция -

function GET_VKAPI_PROFILES(app_id,sid,mid,secret,uids,format

,fields:string):WideString;

Следующие функции были добавлены также в модуль

  • function GET_VKAPI_PROFILES(app_id,sid,mid,secret,uids,format

,fields:string):WideString;

  • function md5(values:string):string;
  • function OPEN_VK_API:boolean;

Здесь параметры

  • app_id — идентификатор вашего приложения
  • sid — данные сессии
  • mid — идентификатор вашей страницы
  • secret — секретный код из сессии, что раньше получали
  • uids — список идентификаторов, про которые необходимо получить информацию (перечисляются через запятую)
  • format — формат полученных данных (два варианта — XML или JSON)
  • fields — список полей, которые необходимо получить из профиля (по умолчанию выводят имя и фамилия)

Md5 я рассказывал для чего, чтобы из строки получить идентификатор безопасности. Остальные все параметры — я рассказывал про них и мы их получали ранее.

Вспомним про прошлую функцию, которая получала данные сесии — это

  • function GET_VKAPI_SESSION(email,pass,app_id:WideString):TStrings;

Так вот если Вы получаете данные сессии с помощью этой функции, то функцию OPEN_VK_API вызывать не нужно, а вот если Вы получаете данные сесии, например обычным способом, то есть сразу например на событие OnClick пишите получение сесии, то тогда необходимо вызвать функцию OPEN_VK_API.

Вот так я получаю данные сессии не с помощью функции из модуля, следовательно для получения информации из профиля я должен написать примерно следующий код

OPEN_VK_API;
   ShowMessage(GET_VKAPI_PROFILES('1918788',Pchar(LabelSid.Caption),Pchar(LabelMid.Caption),Pchar(LabelSecret.Caption),Pchar(LabelMid.Caption),'XML',''));

Сначала функцией OPEN_VK_API создаю необходимые переменные, а затем вызываю функцию GET_VKAPI_PROFILES, которая вернет результат в виде формата, который вы указали в функции, затем Вам останется пропарсить эти данные и все.

А если я получаю данные сесии из модуля, то я должен написать примерно такой код на событие например OnClick TButton

procedure TForm1.Button4Click(Sender: TObject);
var
 Session:TStringList;
 mid,sid,secret:String;
begin
   Session:=TStringList.Create;
   Session.Add(GET_VKAPI_SESSION('ваш логин','ваш пароль','1918788').CommaText);
   secret:=Session.Strings[0];
   mid:=Pars(secret,'',',',0);
   Delete(secret,1,pos(',',secret));
   sid:=Pars(secret,'',',',0);
   Delete(secret,1,pos(',',secret));
   OPEN_VK_API;
 ShowMessage(GET_VKAPI_PROFILES('1918788',sid,mid,stst,mid,'XML',''));
end;

То есть я сначала с помощью функции GET_VKAPI_SESSION получаю одной строкой все данные сесии, затем разбираю эти данные на нужные и вызываю функцию GET_VKAPI_PROFILES заметьте уже без функции OPEN_VKAPI. Дальше это я переделаю и будет более удобно, а пока, что вот такой вот «корявенький» модуль.

Facebook Vk Ok LinkedIn Telegram

Похожие записи:

Здравствуйте, вот на днях решил обновить модуль VK_API, на этот раз добавил функцию, которая получает список id ваших друзей, разделенные запятыми, Вам останется только лишь разобрать данный результат и получить список id. Функция для получения идентификаторов...
Здравствуйте, не много потребовалось, чтобы в модуль добавить новую функцию, остальные постепенно буду добавлять, на этот раз добавил функцию, которая сможет узнать статус пользователя в ВК. Мы уже узнавали это, но сейчас это можно сделать с помощью всего одно...
Как и обещал выложить модуль, который получает такие переменные ВК, как sid mid secret Мы это уже делали с Вами, в этой статье, получали данные сессии, но мы получали обычным кодом, сейчас мы можем получить эти данные всего одной функцией. Да я буду дальше д...