Как быть в офлайн в вк: как стать невидимым для всех

Überauth VK – Ueberauth VK Strategy v0.3.1

VK OAuth3 стратегия для Überauth.

Требования

Мы поддерживаем версии elixir 1.4 и выше.

Монтаж

  1. Настройте свое приложение в VK Developers.

  2. Добавьте :ueberauth_vk в список зависимостей в mix.exs :

     def deps do
      # установка через hex:
      [{:ueberauth_vk, "~> 0,3"}]
      # если вы хотите использовать github:
      # [{:ueberauth_vk, github: "sobolevn/ueberauth_vk"}]
    конец 
  3. Добавьте стратегию в свои приложения:

     определение приложения делать
      [приложения: [:ueberauth_vk]]
    конец 
  4. Добавить ВКонтакте в вашу конфигурацию Überauth:

     конфигурация: ueberauth, ueberauth,
      провайдеры: [
        vk: {Ueberauth.Strategy.VK, []}
      ] 
  5. Обновите конфигурацию вашего провайдера:

     конфиг :ueberauth, Ueberauth.
    Strategy.VK.OAuth, client_id: System.get_env("VK_CLIENT_ID"), client_secret: System.get_env("VK_CLIENT_SECRET")
  6. Включите модуль Überauth в свой контроллер:

     дефмодуль MyApp.AuthController сделать
      используйте MyApp.Web, :controller
      вилка
      ...
    конец 
  7. Создайте маршруты запроса и обратного вызова, если вы еще этого не сделали:

     область "/auth", MyApp сделать
      pipe_through: браузер
      получить "/: провайдер", AuthController,: запрос
      получить "/:провайдер/обратный вызов", AuthController, :обратный вызов
    конец 
  8. Ваш контроллер должен реализовать обратные вызовы для обработки Ueberauth.Auth и Ueberauth.Failure ответов.

Пример реализации см. в примере приложения Überauth.

Настройка

Можно настроить несколько полей, например default_scope , default_display ,

default_state , profile_fields и uid_field .

Сфера

По умолчанию запрошенная область "public_profile" . Область может быть настроена либо явно как значение запроса области в пути запроса, либо в вашей конфигурации:

 config :ueberauth, Ueberauth,
  провайдеры: [
    vk: {Ueberauth.Strategy.VK, [default_scope: "друзья,видео,офлайн"]}
  ] 

Поля профиля

Вы также можете указать настраиваемые поля для профиля пользователя:

 config :ueberauth, Ueberauth,
  провайдеры: [
    vk: {Ueberauth.Strategy.VK, [profile_fields: "фото_200,местоположение,онлайн"]}
  ] 

См. Справочник по методам VK API > Пользователь для полного списка полей.

Состояние

Вы также можете установить настраиваемое поле с именем состояние . Он используется для предотвращения атак типа «человек посередине».

 конфигурация: ueberauth, ueberauth,
  провайдеры: [
    vk: {Ueberauth.Strategy.VK, [default_state: "секретное-состояние-значение"]}
  ] 

Это состояние будет передано вам в обратном вызове как /auth/vk?state= и будет доступно в структуре успеха.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Закрыть
Menu