Задать вопрос

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

Здравствуйте.
Делаю авторизацию, общая схема такая: на закрытые страницы в роутерах стоит колбэк onEnter, в этом колбэке я проверяю значение из стора Залогинен? = true, Нет? = false.
Если не залогинен перекидываю на страницу login. Инпуты формы логина привязываю к значениям стора и потом отправляю на проверку в api.
Сейчас я хочу прикрутить кукисы и возник вопрос, где лучше всего проверять залогинен ли пользователь? Поставить колбэк onEnter на корневой роут / ?
  • Вопрос задан
  • 5700 просмотров
Подписаться 6 Оценить 2 комментария
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Мидл фронтенд-разработчик
    5 месяцев
    Далее
  • Javascript.ru
    Курс по React
    5 недель
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 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>
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
IT ATLAS Москва
от 200 000 до 250 000 ₽
ITK academy Казань
от 50 000 до 90 000 ₽