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

Авторизация в react native router?

Я пока не очень понимаю, как пользоваться и зачем нужен Redux, где что хранить, поэтому не пинайте. У меня есть простое приложение на react-native с авторизацией. У сервера есть 2 урла - /auth, /clientData. При запросе на /auth передается логин-пароль, если авторизация успешная, возвращается токен, который подставляется в заголовки. /clientData возвращает данные о пользователе. На клиенте я сохраняю токен в AsyncStorage.

Как мне при запуске приложения перебросить пользователя в ЛК, если он авторизован или на страницу авторизации, если нет? Или стоит сделать это, непосредственно в компоненте Login, а потом перебросить его в компонент Cabinet? В идеале хочу сделать поддержку socket.io, чтобы обновлять данные пользователя на клиентской части real-time. Как получить его данные, чтобы в последствии использовать их в других компонентах без повторной загрузки? Я искал open-source похожие приложения, но не нашел. Буду благодарен за ссылки на подобные.
  • Вопрос задан
  • 2194 просмотра
Подписаться 2 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 1
nDiviD
@nDiviD
Делать проекты, которыми можно гордиться
И так, в 1ю очередь задача в том, что бы при загрузке приложения определить, сохранены ли данные для входа/выполнен ли вход.
Можно использовать AsyncStorage, а можно Redux с redux-persist (по сути это тоже локальное сохранение, вот только с Redux работать удобнее.)
Ну а теперь при запуске приложения обращаемся к стору, при наличии данных для входа открываем кабинет, либо стучимся к /auth если необходимо подтвердить данные.
Можно открывать кабинет, показывать лоадер, если данные неверные переходить на страницу авторизации.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы