Как сделать авторизацию в react.js?

Здравствуйте.
Делаю авторизацию, общая схема такая: на закрытые страницы в роутерах стоит колбэк onEnter, в этом колбэке я проверяю значение из стора Залогинен? = true, Нет? = false.
Если не залогинен перекидываю на страницу login. Инпуты формы логина привязываю к значениям стора и потом отправляю на проверку в api.
Сейчас я хочу прикрутить кукисы и возник вопрос, где лучше всего проверять залогинен ли пользователь? Поставить колбэк onEnter на корневой роут / ?
  • Вопрос задан
  • 5675 просмотров
Решения вопроса 1
Вполне хорошее решение - проверять права доступа в onEnter. А для чего вам понадобились кукис (касаемо авторизации)? Токены лучше всего хранить в localstorage и синхронизировать с вашим store.

Сгруппируйте роуты, для которых нужна авторизация и ставьте коллбэк туда:
<Route path="/" component={App}>
  <Route onEnter={checkAuth}>{/* Auth routes */}</Route>
  {/* Home page route */}
  <IndexRoute component={Home}>
  {/* Other public routes /*}
  <Route path="about" component={AboutPage} />
</Route>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы