Контакти

Що таке токен вк. Як отримати access_token Що таке ключ вк у вході

Розробникам досить часто доводиться стикатися з додатками та сервісами, які у процесі взаємодії із соціальною мережею Вконтакте, вимагають ключ доступу — access_token.

У цій інструкції ми розберемо два дуже схожі методи, що дозволяють отримати його.

Як проходитиме процес

Все, що від нас буде потрібно, підставити в URL адресу id програми. Також можна редагувати розділи, до яких ми дозволяємо доступ через створюваний access_token.

По суті, ми сформуємо готовий урл і підставимо id двох різних додатків. У цьому полягатиме різниця. Після цього здійснимо перехід за готовим посиланням і отримає ключ доступу.

Посилання для отримання ключа

Ось готова url адреса. Тут нас насамперед цікавлять дані після знака =. У прикладі нижче там написано ID-додатки. Ми, у свою чергу, підставимо конкретне число.

Https://oauth.vk.com/authorize?client_id=ID-програми&scope=notify,photos,friends,audio,video,notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats, ads,offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token

Також зверніть увагу на дані після слова «scope» . Тут ми перераховуємо розділи, яких ключ відкриє доступ. Щоб заборонити застосування доступу до розділу з нашими друзями, приберіть із посилання текст «friends» . Решта за аналогією.

Тепер залишилося лише отримати ID.

Отримуємо ID через власну програму

Для його створення нам потрібно перейти у відповідний розділ, доступний у кабінеті для розробників. Перейдіть туди за посиланням.

Https://vk.com/apps?act=manage

І натисніть кнопку "Створити додаток".

Вкажіть назву та тип програми (див. ). Потім натисніть кнопку «Підключити програму».

З недавнього часу всі операції в кабінеті для розробників потрібно підтверджувати через СМС. У вікні виберіть пункт «Підтвердити через СМС». Отримайте код на свій мобільний телефон, а потім введіть його у форму.

Програма буде створена. Тепер перейдіть на вкладку «Параметри» . Тут у блоці буде вказаний потрібний нам набір цифр. Скопіюйте його.

Тепер ми маємо все необхідне.

Використовуємо ID офіційної програми Вконтакте

Другий спосіб отримання айдішника - це просто взяти готовий додаток. І найкраще - офіційний додаток Вконтакте для Android. Його ID - "2890984". Можете використати.

Отримуємо Access_token

Https://oauth.vk.com/authorize?client_id=2890984&scope=notify,photos,friends,audio,video,notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads, offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token

Намагаюся отримати токен. Читав документацію, нічого не зрозумів. Що робити?

Токени – це ключі доступу до API. Вони використовуються для авторизації за запитом до API.

Токени дозволяють обмежувати доступ до даних користувача за допомогою scope . Він визначає рамки видимості для вашої програми. Токен з scope=friends дає доступ до друзів і нічого більше. Таким чином, токен стає менш небезпечним, ніж логін та пароль.

Як отримати

Токен можна отримати прямо із браузера. Для цього потрібно лише перейти за правильним посиланням. Як скласти правильне посилання:

1. Створіть Standalone програму.

  • redirect_uri вказувати зайве т.к. сайт вам не потрібен, додаток клієнтський.
  • response_type та display залиште такими, як у прикладі.
  • client_id ви отримали на другому етапі.
  • v візьміть зі сторінки з версіями API. Виберіть найсвіжішу.

scope вибирайте залежно від методів, які хочете використати. Наприклад, для доступу до методу

Соціальні мережі стали невід'ємним інструментом для просування сайтів. Для розкручування сайту через соц. мережі слід створити групу або сторінку цього сайту. Набирати передплатників, викладати новини на стіну та багато чого ще (це тема окремої нотатки). Багато цих процесів можна автоматизувати використовуючи API (інтерфейс прикладного програмування) відповідної соціальної мережі. У цій нотатці я розберу як підключитися до vk api (вконтакте), як почати працювати з вк апі, а також наведу кілька прикладів роботи з api вконтакте.

Створення програми вконтакті

І так приступимо. Vk api має багато методів, але однією з основних їх відмінностей є те, що для виконання запитів до вкапі через деякі методи потрібен спеціальний ключ доступу - токен (access_token). Отримати його можна, створивши свою програму. Нам пропонують кілька видів програм, але я вибираю тип Standalone. Мені його вистачає. Для початку створення програми переходимо за посиланням і потрапляємо до наступного вікна.


Тут ми вибираємо тип та назву нашої програми. Натискаємо підключити програму і отримуємо на номер телефону, прив'язаному до облікового запису, з якого ми створюємо програму, смс з кодом. Вводимо його та переходимо в наступне вікно. У цьому вікні переходимо до вкладки настроювання.


У вкладці налаштування ми бачимо поля з назвою ID програми та захисний ключ. Записуємо кудись ці дані. Більше нічого у вкладках я не робив. Стан програми залишив у положенні вимкнено. Тиснемо зберегти налаштування. Все, ми створили програму вконтакті.

Отримання токена (access_token) api вк

Https://oauth.vk.com/authorize?client_id= &display= [вигляд вікна]&redirect_uri=https://oauth.vk.com/blank.html&scope= [права програми]&response_type=token&v=5.52

  • client_id - ID нашої програми, отриманої раніше.
  • display – вид вікна, в якому відбуватиметься авторизація. Можливо page, popup, touch та wap
  • scope – права доступу нашої програми щодо даних користувача. Про права докладніше нижче.

Права програми вк щодо заданого користувача можуть задаватися в текстовому та цифровому вигляді. У текстовому це виглядатиме так scope=friends,messages,groups. Цим рядком коду ми дозволили програмі vk доступ до друзів, повідомлень та груп користувача. Також права задаються й у цифровому вигляді. Для кожного правила є бітова маска та сума цих масок і дозволятиме додатку певні дії. Наприклад право friends(+2), messages(+4096), groups(+262144), у результаті сума бітових масок буде 266242 і код scope=266242 буде аналогом scope=friends,messages,groups . Окрему увагу хочу приділити праву offline. Установка цього права робить токен, що отримується нами, нескінченним. Якщо це право не поставити через певний час, то токен потрібно буде отримувати знову. Докладніше про права програми вк можна почитати тут. У результаті давайте складемо адресу для отримання токена додатком з правами доступу до друзів, повідомлень і груп користувача, а також безсмертним токеном. Id програми нехай буде 123456. Ця адреса буде виглядати так:

Https://oauth.vk.com/authorize?client_id=123456&display=page&redirect_uri=https://oauth.vk.com/blank.html& scope=friends,messages,groups,offline&response_type=token&v=5.52


Підтверджуємо дію і потрапляємо на сторінку із попередженням, з адресного рядка браузера беремо отриманий токен. Це буде після #access_token= , код expires_in=0 говорить нам, що токена (access_token) api вк безсмертний. Відповідно user_id= це ID користувача, для якого ми отримали токен.

Зайдемо в налаштування облікового запису у вкладку налаштування програм і побачимо нашу програму.


Тепер у нас все готове для роботи з апі вконтакті.

Приклади роботи з api vk

Для роботи з api вк я використовую мову програмування php. Тому і приклади я наводитиму на php. Для того, щоб виконати якусь дію, нам потрібно надіслати запит до api vk. Запит ми можемо надіслати через адресний рядок браузера. Тобто запит це є певна урла адреса із заданими в ньому певними параметрами. Синтаксис складання такого урлу описано нижче.

Https://api.vkontakte.ru/ method/[ВИКЛИКОВИЙ МЕТОД]?[ПАРАМЕТРИ ВИКЛИКАНОГО МЕТОДУ]

Список методів api vk знаходиться тут. Більше поки що загострювати на цьому уваги не будемо, потім на реальних прикладах все стане ясно. Залишилося тільки розібратися як запит до апі вконтакте надіслати засобами php. Для цього будемо використовувати php функцію file_get_contents , а також функцію json_decode так як відповідь від сервера ми отримаємо у форматі json. Ось шаблон виконання запиту до вк на php.

$result=json_decode(file_get_contents("https://api.vkontakte.ru/ method/[ВИКЛИКОВИЙ МЕТОД]?[ПАРАМЕТРИ ВИКЛИКАНОГО МЕТОДУ]"));

ну а тепер кілька прикладів роботи з апі vk

$userid=12345; $ mytoken = 56789; /*верне об'єкт із значеннями статі та дня народження користувача*/ $request_params = array("user_id" => $userid, "fields" => "sex", "fields" => "bdate"); $get_params = http_build_query($request_params); $result = json_decode(file_get_contents("https://api.vk.com/method/users.get?". $get_params)); /*перевірка користувача на банк */ $request_params = array("user_id" => $user_id, "fields" => "deactivated"); $get_params = http_build_query($request_params); $result = json_decode(file_get_contents("https://api.vk.com/method/users.get?". $get_params)); if(isset($result->response->deactivated))( echo "Сторінка заморожена або видалена"; ) /*надправимо повідомлення користувачеві з user_id=222222*/ $mesage="Привіт, як справи?"; //кодуємо рядок $msg=urlencode($mesage); $result = json_decode(file_get_contents("https://api.vkontakte.ru/method/ messages.send?user_id=222222& message=".$msg."&access_token=".$mytoken)); /*приглосим в друзі користувача з user_id=222222*/ $mesage="Давайте дружити"; $msg=urlencode($mesage); $result=json_decode(file_get_contents("https://api.vkontakte.ru/ method/friends.adduser_id=222222& text=".$msg."&access_token=".$mytoken));

Методів у апі багато, тому раджу читати документацію. Звичайно, запити не завжди виконуються правильно і повертають коди помилок. Помилки можна переглянути тут. Так що так просто можна підключитися до api vk і автоматизувати свої дії в контакті.

Все частіше і частіше на ринку з'являються програмні продукти для ВКонтакті у вигляді онлайн-сервісів, мобільних або комп'ютерних програм і навіть скриптів, для роботи яких потрібна авторизація облікового запису через access_token. У ряді випадків ці програми або послуги самі дають можливість у пару кліків отримати необхідний для авторизації ключ доступу. Але як бути, якщо ви скачали скрипт, а ключа access_token для його роботи у вас немає?

Як отримати access_token?

Ми будемо розглядати метод авторизації в соціальній мережі ВКонтакті за прямим посиланням через API ВКонтакте (на базі протоколу OAuth), іменований Implicit flow. Авторизація таким методом виконується через програму ВКонтакті, зазначену у вигляді ID. Це найбезпечніший спосіб авторизації. В інтернеті ви можете знайти велику кількість статей, як ця, про отримання access_token через різні підозрілі програми. Ми підемо іншими шляхами – розберемо способи авторизації через власну програму або офіційну програму ВКонтакте.

Спосіб отримання токена полягає в переході за спеціальним посиланням, що містить ID деякої програми ВКонтакте, виду:

Цитата

200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id= ID_ДОДАТКИ&scope=notify,photos,friends,audio,video,notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads,offline&redirect_uri=http://api.vk.com/blank. html&display=page&response_type=token


Все питання в тому, де ж взяти цей ID_ДОДАТКИ. Як я і обіцяв, ми розглянемо 2 способи:
  • Отримання токена через власний додаток.

    Такий метод отримання токена має на увазі, що у вас є власна програма. У такому разі пропустіть кілька кроків. Ми ж відштовхуватимемося від факту, що своєї програми у вас немає, а значить вам потрібно її створити. Для цього необхідно перейти на сторінку управління своїми програмами за посиланням vk.com/apps?act=manageта натиснути на кнопку « Створити програму».


    Введіть назву для майбутньої програми, наприклад, « Отримання access_token», переконайтеся, що стоїть галочка « Standalone-додаток» та натисніть на кнопку « Підключити програму».


    Далі потрібно затвердити програму, отримавши на телефон код підтвердження та ввівши його у спеціальне поле. Також, у процесі затвердження програми ви можете прив'язати свій мобільний пристрій до облікового запису ВКонтакте. Для цього натисніть кнопку « Прив'язати пристрій». Інакше просто натисніть на посилання « Підтвердити через SMS» без прив'язки пристрою до сторінки.


    Після підтвердження у вас відкриється сторінка з інформацією про створену програму. У меню зліва натисніть на пункт « Налаштування». Там і розташовується ваш так званий client_id, тобто ID вашої програми ВКонтакті.


    Цей ID потрібно скопіювати та вставити в наше посилання замість ID_ДОДАТКИ. Повинно вийти приблизно так:

    200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id=5563738&scope=notify,photos,friends,audio,video, notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads,offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token


    5563738 – це ID нашої програми. У вас буде подібне число.
  • Отримання токена через офіційний додаток ВКонтакте.

    Цей метод абсолютно ідентичний попередньому за винятком того, що ви не створюєте власну програму, а використовуєте вже створене офіційне додаток ВКонтакте, якому можна довіряти.

    Як приклад, ми візьмемо програму ВКонтакті для Android. Його ID наступний: 2890984 . У результаті, підставляючи його на заслання, вона набуде наступного вигляду:

    200?"200px":""+(this.scrollHeight+5)+"px");">https://oauth.vk.com/authorize?client_id=2890984&scope=notify,photos,friends,audio,video, notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads,offline&redirect_uri=http://api.vk.com/blank.html&display=page&response_type=token

На цьому ми завершили частину, що стосується ідентифікатора (ID) програми, яка використовується під час авторизації. Але залишилося уточнити ще кілька моментів.

  • Надавати отриманий access_token третім особам.
  • Проходити авторизацію через сумнівні програми (крім вашого власного чи офіційного).
  • Після використання згенерованого access_token видаляти його. У разі потреби завжди можна згенерувати новий.
  • Завершити всі активні сеанси в налаштуваннях безпеки вашого облікового запису ВКонтакте. Це швидкий спосіб вимкнути всі активні ключі доступу (access_token).
А тепер, після того, як ви ознайомилися з інформацією вище, ви можете приступити до створення власної програми для генерації свого access_token або перейти за посиланням для генерації access_token через програму ВКонтакте для Android за допомогою кнопки нижче:

Отримати access_token

Що таке токен вк? Сьогодні технології розвиваються з дуже швидким темпом. Поруч із ними та соціальні мережі набирають величезні обороти. Не мати акаунта хоча б в одній із соцмереж – вже неможливо для кожної людини, принаймні серед молодих людей та дівчат. Щодня вони поповнюються терабайтами фотографій, відео та навіть примітивної одиниці знань тексту.

Але на жаль про особливі «фішки» цього ресурсу знають мало хто. Хтось дійсно проводить там мало часу, комусь вони просто не потребують.
Однією з таких прикмет є так званий «токен» в цій соцмережі, мало користувачів знає про те, що таке токен вк.

Що таке access token вконтакті.

Токен вк – це довгий рядок, що складається із символів: цифр та букв латинського алфавіту. Здавалося б, нічого особливого в ній немає, але вона дає великі можливості користувачеві, який її активував.

Наприклад, писати певні повідомлення певній людині, відображати вічний онлайн вашої сторінки, ніби ви завжди сидите на сайті. Останній варіант дає великий плюс, адже нещодавно невидимку в контакті прибрали і за допомогою токена ніхто не зможе зрозуміти, коли саме ви були онлайн, адже він відображається постійно. Ставити статус, писати на стіні тощо

Як отримати token вконтакті.

Процес отримання токена проводиться через програму. Його потрібно створити самим, це можна зробити перейшовши за посиланням vk.com/apps?act=manage і натиснувши кнопку створення. У назву вписуємо все, що вам завгодно. Тип вибираємо найперший. Далі проходимо підтвердження за допомогою мобільного телефону.

Виходить сторінка вашої програми, вибираєте "Налаштування" і там буде довгий набір зірочок і зверху від нього айді.

https://oauth.vk.com/authorize?client_id=5563738&scope=notify,photos,friends,audio,video,notes,pages,docs,status,questions,offers,wall,groups,messages,notifications,stats,ads, offline&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token


Як дізнатися про свій token в контакті.

Виконавши все вищеописане, вам вилізе віконце, там ви погоджуєтесь з усім і натискаєте кнопку «Дозволити».

Здається складно, але насправді отримати токен в вк може кожен, інше питання навіщо? 99% користувачам вк, його знання абсолютно не потрібне. Так само поспішаємо застерегти вас не давайте і не вписуйте свій токен на сумнівних ресурсах інакше ваша сторінка може опинитися в руках зловмисника. Так, наприклад, вас можуть підписати на різні групи або спільноти без вашого відома, поставити вам сумнівний статус або опублікувати від вашого імені повідомлення на вашій стіні



Сподобалась стаття? Поділіться їй