• Как сделать авторизацию vk с помощью oauth + node.js + angularjs?

    zoonman
    @zoonman
    ⋆⋆⋆⋆⋆
    Серверная авторизация довольно проста. Для начала нужно разобраться, как работает OAuth. Большая часть потока происходит на серверной стороне и редирект принимает серверная сторона, а не клиентская. Т.е. ангуляру вообще пофиг на редирект в целом, но он должен понимать, что сессия как-то была начата, за это должно отвечать API (Node.js).
    Вам поможет вот эта штучка https://github.com/stevebest/passport-vkontakte

    На клиенте обычно все реализуется через сервис или фабрику.
    Вначале вы получаете от вашего сервера ссылку, а затем перенаправляете пользователя в вк, после возврата из вк ваша серверная сторона проверяет, что все ок или нет, сохраняет где-то все внутри у себя. Потом делает редирект на SPA. Как только SPA загружена, она запрашивает от сервера, как успехи в авторизации, сервер отвечает. Далее ваша бизнес-логика.

    Очень важно строго следовать правилам OAuth и не передавать токен пользователя на клиент.

    Если это звучит слишком сложно, есть готовые сервисы для авторизации, например Auth0.
    Ответ написан
    Комментировать
  • Как в TemplateProvider достать данные из resolve?

    AMar4enko
    @AMar4enko
    Последние версии ui-router поддерживают locals из resolve-секции в templateProvider.
    Проверьте вашу версию и попробуйте сделать
    templateProvider: ['$stateParams', 'profile', function($stateParams, profile) {
                return 'modules/person/lawyer_view.html';
              }],

    Насколько я помню, templateProvider возвращает непосредственно данные шаблона, а не url (или promise, который вернет данные). Можете использовать $templateRequest, чтобы вытащить данные по url шаблона, у него внутри $templateCache используется.
    P.S. https://github.com/angular-ui/ui-router/releases/t...
    Ответ написан
    1 комментарий