<
  • Главная
Статьи

C # API ВКонтакте - Вхід | Центр програмування Артема Кашеварова | навчання програмуванню

Продовжуючи розмовляти на тему взаємодії c API ВКонтакте, ми вже створили своє додатків в попередньому уроці , Отримали ID додатків, захищений ключ і сьогодні перейдемо безпосередньо до практичної частини, почнемо писати код, реалізуємо авторизацію.

Як вже було сказано раніше, є два методи авторизації. В силу обставин нам можливо використовувати тільки метод OAuth авторизації. Якщо говорити докладніше, то авторизація даними способом відбувається наступним чином. Відправляється запит на сервер ВКонтакте вказуючи, необхідні параметри для авторизації, отримуємо відповідь в браузер, користувач вводить логін і пароль, підтверджує права додатки, і при успішній авторизації нас перенаправляє на спеціальну адресу, в якому є 2 параметра user_id (id користувача) і access_token (спеціальний ключ).

Переходимо до програмування Переходимо до програмування. Створюємо новий C # Windows Form додаток і додаємо на нашу форму елемент webBrowser.

У властивостях webBrowser виставляємо параметр ScriptErrorsSuppressed в значення True. Це вимкне поява повідомлень про помилки javascript сценаріїв.

Властивість Url вказуємо наступне: oauth.vk.com/authorize?client_id= ID_ПРІЛОЖЕНІЯ & scope = ПРАВА_ДОСТУПА & redirect_uri = https: //oauth.vk.com/blank.html&display=popup&response_type=token

html&display=popup&response_type=token

Де ID_ПРІЛОЖЕНІЯ це ID який ви отримали при створенні програми. А ПРАВА_ДОСТУПА це перелік прав , Які необхідно отримати з додатком. Тобто якщо хочемо отримати доступ до друзів і аудіозаписів, то вказуємо friends, audio. Запускаючи додаток ви отримаєте сторінку з авторизацією ВКонтакте, якщо так і є переходимо далі до обробки авторизації. Нам залишилося обробити подія, коли користувач успішно ввів логін і пароль і система повернула ключ, який вказує на те, що авторизація успішно проведена. Додаємо подія Navigated до нашого webBrowser. Коли авторизація відбувається успішно, система перенаправляє нас на redirect_uri який вказаний в параметрах запиту. Тому перевіряємо перебуваємо ми на цій сторінці, якщо так, то витягуємо Url і його параметри. Пишемо в подію Navigated наступний код:

if (webBrowser1.Url.ToString (). IndexOf ( "https://oauth.vk.com/blank.html") == 0) {var urlParams = HttpUtility.ParseQueryString (e.Url.Fragment.Substring (1) ); string ACCESS_TOKEN = urlParams.Get ( "access_token"); string USER_ID = urlParams.Get ( "user_id"); }

Таким чином в змінної ACCESS_TOKEN ми отримали спеціальний ключ який, вказує на успішну авторизацію, а в USER_ID міститься id авторизованого користувача. Для того що б працював метод ParseQueryString вказуємо на початку коду using System.Web;

На цьому все, в подальших уроках ми поговоримо про те, як використовувати ці дані, як відправляти запит, отримувати і обробляти відповідь.

Сподобалася стаття? Тисни:

Com/authorize?
Сподобалася стаття?


Новости
  • Виртуальный хостинг

    Виртуальный хостинг. Возможности сервера распределяются в равной мере между всеми... 
    Читать полностью

  • Редизайн сайта

    Редизайн сайта – это полное либо частичное обновление дизайна существующего сайта.... 
    Читать полностью

  • Консалтинг, услуги контент-менеджера

    Сопровождение любых интернет ресурсов;- Знание HTML и CSS- Поиск и обновление контента;-... 
    Читать полностью

  • Трафик из соцсетей

    Сравнительно дешевый способ по сравнению с поисковым и контекстным видами раскрутки... 
    Читать полностью

  • Поисковая оптимизация

    Поисковая оптимизация (англ. search engine optimization, SEO) — поднятие позиций сайта в результатах... 
    Читать полностью