Аутентификация без перенаправления в чистом приложении ReactJS (SPA)? - PullRequest
0 голосов
/ 21 января 2019

В чисто одностраничном приложении, построенном с использованием ReactJS, где сервер является просто API, есть ли причина для перенаправления для входа в систему?

Обычный рабочий процесс, когда вы получаете доступ к URL-адресу, для которого вам необходимо войти, а вы - нет, это:

  1. Перенаправление в / log_in с атрибутом next_page.
  2. Войти.
  3. Перенаправить обратно на следующую страницу.

В SPA, использующем ReactJS, все страницы, требующие входа, могут быть легко помещены в компонент, который не показывает страницу и вместо этого показывает диалог входа в систему.

Есть ли технические проблемы с этим подходом? Есть проблемы с безопасностью или удобством использования?

1 Ответ

0 голосов
/ 21 января 2019

В моих первых попытках работать с React я тоже попробовал подход «компонента компонента», который бы отображал истинный компонент только в том случае, если пользователь вошел в систему. Он работал отлично, проблемы, с которыми я столкнулся:1. Когда приложение стало больше, это был дополнительный шаг, который я должен был добавлять каждый раз.2. Есть более эффективное решение.

Я перешел на реакции-роутер. React Router синхронизирует ваш пользовательский интерфейс с URL .Он имеет простой API с мощными функциями, такими как отложенная загрузка кода, динамическое сопоставление маршрутов и обработка перехода местоположения, встроенными прямо в .

У них даже есть готовый пример защищенной маршрутизации (аутентификации)

https://reacttraining.com/react-router/web/example/auth-workflow

SPA может быть выполнен в соответствии с обычным рабочим процессом, который вы упомянули,при доступе к URL.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...