Как получить токен пользователя для ВКонтакте?
Пытаюсь получить токен. Читал документацию, ничего не понял. Что делать ?
Илья
Токены — это ключи доступа к API. Они используются для авторизации при запросах к API.
Токены позволяют ограничивать доступ к данным пользователя с помощью параметра scope
. Он определяет рамки видимости для вашего приложения. Токен с scope=friends
даёт доступ к друзьям и ни к чему больше. Таким образом, токен становится менее опасным, чем логин и пароль.
Как получить
Токен можно получить прямо из браузера. Для этого нужно только перейти по правильной ссылке. Как составить правильную ссылку:
1. Создайте Standalone приложение.
Приложения создают на странице с вашими приложениями. Дайте приложению понятное название, чтобы в будущем легко вспомнить зачем его создавали.
2. Достаньте его client_id
Снова перейдите на страницу с вашими приложениями. Нажмите на кнопку "Редактировать" рядом с нужным приложением. В адресной строке появится его id
. Из этой ссылки: https://vk.com/editapp?id=678295892
видно, что client_id=678295892
.
3. Соберите ссылку для получения ключа
Пример ссылки из документации Implicit Flow:
https://oauth.vk.com/authorize?client_id=1&display=page&scope=friends&response_type=token&v=5.92&state=123456
redirect_uri
указывать не надо т.к. сайт вам не нужен, приложение же клиентское.response_type
иdisplay
оставьте такими, как в примере.client_id
вы получили на втором шаге.v
возьмите со страницы с версиями API. Выберите самую свежую.
scope
выбирайте в зависимости от методов, которые хотите использовать. Например, для доступа к методу wall.post в документации ясно сказано: "требуются права доступа: wall".
Параметр scope
указывайте через запятую, вот так: scope=photos,groups
.
4. Перейдите по собранной ссылке
Вы получите access_token
— строку наподобие 533bacf01e1165b57531ad114461ae8736d6506a3
. Она появится в адресной строке, подписанная как access_token
. Если в адресной строке появился code=
вместо access_token=
, проверьте правильность параметра response_type
.
Что читать
- Статья от Mail.ru OAuth 2.0 простым и понятным языком
- Статья от Digital Ocean Введение в OAuth 2
- Implicit Flow ВКонтакте
Попробуйте бесплатные уроки по Python
Получите крутое код-ревью от практикующих программистов с разбором ошибок и рекомендациями, на что обратить внимание — бесплатно.
Переходите на страницу учебных модулей «Девмана» и выбирайте тему.