Как обрабатывать токены аутентификации в приложении стека MEAN

Я новичок в стеке MEAN и занимаюсь разработкой комплексного приложения с использованием MEAN. У меня есть небольшая путаница о том, как обрабатывать токены аутентификации на стороне клиента (то есть в Angularjs).

Я создал токен аутентификации после регистрации пользователя или входа в приложение. Я перешел по этой ссылке для создания токена аутентификации. Я установил токен аутентификации в заголовках ответа и сохранил его в браузерах localStorage на стороне клиента. Я получал к нему доступ каждый раз, когда делал REST-вызов.

Является ли хорошей практикой доступ к токенам напрямую из localStorage или мне нужен доступ к токену путем создания фабрики или службы? Я видел много SO-ответов, в которых они получают доступ к токенам, создавая либо фабрику, либо сервис, но я не понимаю, могу ли я получить доступ к токену сразу из localStorage, зачем мне создавать фабрику или сервис? Есть ли лучшие практики для этого?

1 ответ

Решение

MEAN.IO предоставить методологию Test-Driving-Development и имеет несколько тестовых примеров кармы из коробки. Для модульного тестирования вы должны написать фабрику app.factory('getTokens) а затем напишите для него тестовый пример:

  • Пользователь вошел в систему -> Ok.
  • Пользователь не авторизован -> Бросить ошибку.

Но если вы по какой-то причине не поддерживает TDD - не стоит.

Другие вопросы по тегам