Работаем с API соц. сети Вконтакте (Оценка: +6)

Печать / RSS-лента
Работаем с VK API

Данная статья это не большой материал который может послужить стартом для изучения работы с API одной из самых популярных соц сетей в России. Для начала, что такое API. Как говорит википедия:
Интерфейс программирования приложений (иногда интерфейс прикладного программирования) (англ. application programming interface, API [эй-пи-ай]) — набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах. Используется программистами для написания всевозможных приложений. т.е если на русском, это специальный способ доступа к сайту, который используется для написаний приложений.

Шаг 1. Создание приложения Вконтакте.
Приложение Вконтакте будет связующим звеном для работы с api сайтом. Создать приложение можно по адресу http://vk.com/editapp?act=create (ссылку в приложениях так и не нашел брал с документации API). Выбираем «Standalone-приложение» . Подтверждаем с помощью мобильного. И вот приложение готово. После создания заходим в редактирование приложения, вкладка Настройки и записываем ID приложения.

Шаг 2. Авторизуемся, получаем ключ доступа - token.
Следующий шаг серверная авторизация. В этой статье я буду использовать вечный токен с поддержкой https (SSL) запросов. Токен нужен при каждом обращение к приложению. Ссылка на получения токена:

api.vk.com/oauth/authorize?client_id=[id приложения]&redirect_uri=http://api.vk.com/blank.html&scope=[права доступа]&display=[режим отображения]&response_type=token


id приложения – ID приложения записанный в 1ом шаге.
права доступа - запрашиваемые права для приложения.( т.е какие действия может выполнять приложение. более подробно http://vk.cc/OZoLn) используем 999999 – все права + вечный токен.
режим отображения – тип отображения результата. используем wap.
Получаем ссылку:

https://api.vk.com/oauth/authorize?client_id=[id приложения]&redirect_uri=http://api.vk.com/blank.html&scope=999999&display=wap&response_type=token
. Вставляем в браузер, переходим, подтверждаем доступ к аккаунту. Получаем ответ в адресной строке.

https://api.vk.com/blank.html#access_token=35477428db3e62f8a3ffaf3f622c1d684a387d28af7bced8ee02867d9d969af7e4c47f38effe098b2bdae&expires_in=0&user_id=ид

копируем значение access_token, сохраняем. expires_in = 0, означает, что наш токен вечный (он сбросится при смене пароля аккаунта и т.д). Стандартный токен идет на 86 400 секунд (сутки).

Шаг 3. Первый запрос, получение результата.
Для того, что бы получить ту или иную информацию нужно применить выбранный вами метод. Список методов находиться здесь http://vk.cc/1l5ECM
Для примера, будем использовать простой метод users.get – возвращает информацию о пользователе(-лях).
Хост, куда будем отправлять данные - https://api.vk.com
Данные буду получать в виде xml, так же вы можете выбрать json.

У каждого метода есть как обязательные, так и не обязательные параметры.
Обязательным входным параметром для данного метода это uids, перечисленные через запятую ID пользователей. Для примера нам хватит одного, возьмем Павла Дурова. И разумеется прикрепляем токен.

Получаем такую ссылку:

https://api.vk.com/method/users.get.xml?uids=1&access_token=[наш токен]

Полученные данные:

<response list="true">
<user>
<uid>1</uid>
<first_name>Павел</first_name>
<last_name>Дуров</last_name>
</user>
</response>

Дальше используем функцию simplexml_load_string() для обработки результатов.

Шаг 4. Укрепляем знания. Начало написания приложения.
Сильно расписывать скрипт не буду, опишу саму суть работы скрипта mp3 поиска вконтакте. Да и интерфейс особо разрисовывать нет желания. Скрипт написан без использования ООП для большего понимания (хотя на ООП куда удобнее).

Скрипт-пример работы с API я закину на хостинг и выложу ссылку. На данный момент не имею возможности опубликовать скрипт (статья писалась в казарме мотострелковой роты).gif ) Пока что, отвечу на вопросы в пм или в комментариях.
Автор статьи: Павел (12.03.13 / 14:33)
api, вконтакте, поиск mp3 вконтакте
Рейтинг: +6
Просмотров: 5087
Комментарии (12) »