Точно не знаю, но но для open api(эта авторизация насколько я понимаю является надстройкой над oAuth ) можно попробывать просто сделать переадресацию роутера из кэлбека. Вроде как $location позволяет делать переадресацию.
VK.Auth.login(function(response) < if (!response.session) < alert(‘вы не можете войти используя этот акаунт’); return; >scope.$apply(function() < $location.path(«/route»); >); >, VK.access.FRIENDS | VK.access.WIKI);
Это на вскидку. Узнаешь точнее отпишись
Вообще тебе надо создать в ангуляре сервис ответственный за авторизацию.
Про htpps я ХЗ. Гугли, может и не в нем дело.
__________________
Лучше калымить в гандурасе чем гандурасить на колыме
Последний раз редактировалось DjDiablo, 24.09.2013 в 23:30 .
24.09.2013, 21:47
Регистрация: 04.02.2011
Сообщений: 1,815
Я любопытства ради попробывал сделать авторизацию в VK.
Идея в том что хитрый метод access (в котором был кэлбек логикой доступной только авторизованных) вызывал кэлбек если пользователь уже авторизован, либо вызывал окно авторизации и вызывал кэлбек после авторизации.
Как установить эмулятор и сделать авторизацию через Вконтакте.
Собственно это идея сквозного функционала, теперь в любой директиве или контролере можно делать защищенные участки кода которые выполнятся только для авторизованных пользователей.
var projectModule = angular.module(‘project’,[]); projectModule.factory(‘user’, function() < var vk = < data: <>, appID: 3896712, // как веб сайт appPermissions: 16, //инициализация init: function()< VK.init(); >, //метод входа login:function(callback)< function authInfo(response)< if(response.session)< // Авторизация успешна vk.data.user = response.session.user; callback(vk.data.user); >else < alert(«Авторизоваться не удалось!»); >> VK.Auth.login(authInfo, vk.appPermissions); >, //метод проверки доступа access:function(callback)< VK.Auth.getLoginStatus(function(response) < if(response.session)< // Пользователь авторизован callback(vk.data.user); >else < // Пользователь не авторизован vk.login(callback); >>) >, logout:function()< VK.Auth.logout(); this.data.user=<>; alert(‘вы вышли’); > > vk.init(); return vk; >); function FirstCtrl($scope, user) < $scope.logout=function()< user.logout(); >user.access(function(usr)< alert(‘Этот код исполнится только для авторизованных’); console.log(usr); >); > Разлогинится
Источник: javascript.ru
Как сделать авторизацию через вконтакте
Полный спектр компьютерных услуг!
Загрузка. Пожалуйста, подождите.
Сообщение сайта
(Сообщение закроется через 2 секунды)
Внимание!
ПЛАГИН НА АВТОРИЗАЦИЮ С ПРИВЯЗКОЙ АККАУНТА | MC-AUTH — ОБЗОРЫ ПЛАГИНОВ #32
Веб-разработка для начинающих / Авторизация через ВКонтакте, Mail.ru и другие — 3 (ВКонтакте и OAuth)
Decker
Просмотр профиля
27.8.2011, 15:13
Группа: Главные администраторы
Сообщений: 14349
Регистрация: 12.10.2007
Из: Twilight Zone
Пользователь №: 1
В прошлых двух частях мы сделали авторизацию через ВКонтакте, используя предоставленный ими javascript-виджет и через Майл.ру, используя как JS API, так и через взаимодействие сервер-сервер. Сегодня мы исправим наше упущение относительно ВКонтакте и рассмотрим авторизацию через ВКонтакте без использования клиентских javascript’ов.
В качестве ссылки на авторизацию мы можем использовать любой элемент, например картинку
оформленную аналогичным образом со ссылкой на авторизацию через mail.ru.
Ссылка у нас будет следующего вида:
Механизм работы с Контактом следующий: пользователь переходит по ссылке, передавая Контакту номер нашего приложения, параметры доступа, которые хочет получить наше приложение в параметре scope, URI для перенаправления как в случае согласия пользователя, так и в случае отказа его предоставить доступ нашему приложению. Параметр response_type=code обязателен в случае с авторизацией через OAuth. Мы хотим получить лишь базовые данные о пользователе и пока не хотим постить на его стену и слать ему сообщения, поэтому параметр scope у нас пустой.
После того как пользователь разрешит нам доступ, его перенаправит на страницу, указанную в параметре redirect_uri в следующем виде:
Хотя в документации указан такой пример (с добавлением http://) перед переданным значением, как показывает практика, можно безопасно передавать полные адреса, адрес протокола добавляется только тогда, когда это нужно.
В случае, если пользователь нам откажет (об этом тоже важно помнить), то будет перенаправлен на страницу _http://REDIRECT_URI?error=access_deniederror_description=User+denied+your+request
Пришедший с ответом параметр code используется для получения ключа доступа (access_token), с помощью которого мы собственно и будем забирать данные о пользователе. Для того чтобы использовать полученный code у нас ровно час.
Для получения access_token можно использовать вот такой код:
die(‘Или какая-то другая обработка ошибки’);
В $response->access_token мы получим так необходимый нам ключ доступа, а $response->user_id — номер пользователя в ВКонтакте. В случае каких-либо ошибок $response->error будет не пустым и в $response->error_description будет краткое описание ошибки.
Выполнять запросы к API можно получая как XML ответы, так JSON, получая содержимое страницы api.vkontakte.ru/method/METHOD_NAME.xml?PARAMETERSaccess_token=ACCESS_TOKEN для второго. Для себя я выбрал JSON раз уж взаимодействие с этой социальной сетью им и начинается.
Посмотреть полный список методов API можно на вики-страничке в разделе для разработчиков, их достаточно много, однако нам понадобится лишь getProfiles, возвращающий расширенную информацию о профилях одного или нескольких пользователей.
Все с нетерпением ждем PHP 5.4, используя вот такие некрасивые вещи.
В массиве $arrResponse мы имеем массив объектов «пользователь», что именно нам будет предоставлено мы указываем в параметре fields (допустимые параметры uid, first_name, last_name, nickname, screen_name, sex, bdate (birthdate), city, country, timezone, photo, photo_medium, photo_big, has_mobile, rate, contacts, education, online, однако некоторые, например uid и first_name приходят и без явного указания). Кроме этого нам доступна гениальная вещь — мы можем указать падеж склонения имени. Этой полезнейшей вещью можно пользоваться на своем сайте, выполняя поиск по имени и получая от Контакта имена в нужном склонении.
Единственное, что нам понадобится из ответа: $response[0]->uid, $response[0]->photo (для аватарки), $response[0]->first_name и $response[0]->last_name, из которых мы склеим отображаемое имя пользователя.
Дальнейший список действий аналогичен первой моей статье: проверяем есть ли у нас такой пользователь, если есть — обновляем аватарку и мя пользователя, если нет — создаем запись в базе, авторизуем на сайте и переадресовываем на главную страницу.
Original source: habrahabr.ru (comments).
Источник: dml.compkaluga.ru
AuthmeVK — Авторизация с привязкой к ВКонтакте
AuthmeVK — Авторизация с привязкой к ВКонтакте
Здравствуйте. Сегодня я хочу предоставить вам своё творение. Данный плагин предназначен для усиления защиты аккаунтов и сервера
Настройка плагина:
1) Скопировать айди в поле settengs: group_id.
2) Получить токен. Группа -> Управление -> Работа с API -> Создать ключ (желательно все галочки).
3) Полученный токен вписать в полеsettengs: group_token.
4) Включить Long Poll API. Группа -> Управление -> Работа с API -> Long Poll API -> Настройки. Тут Включить. Версия обязательно 5.92.
5) Не выходя из Long Poll API заходим в Типы событий и включаем Входящие сообщения
6) Готово. Можно запускать плагин
Команды и права плагина:
1) /register
1) /login
1) /changepassword
1) /code
1) /vkauth reload Права vkauth.reload
Установка плагина:
1)Скачиваем плагин
2)Перекидываем в папку «папка сервераplugins»
3)Запускаем сервер
Скачать плагин
Источник: ru-minecraft.ru