В многостраничном приложении проверку авторизован пользователь или нет мы выполняем прямо на сервере.
Но что делать в SPA-приложении? Авторизовавшись один раз, после перезагрузки страницы пользователю опять будет показываться форма входа.
Пара мыслей, что пришли в голову:
- при загрузке приложения отправлять запрос на сервер для проверки, но это долго, ведь параллельно могут быть нужны еще запросы для получения данных
- выводить в blade-шаблон в тег script переменную USER, наличие которой будет показывать, что пользователь авторизован, но это слишком костыльно
Ситуация SPA от не-SPA отличается лишь тем, что в первом случае вместо перезагрузки страницы работает Ajax. Авторизация выполняется всегда только на сервере и при каждом запросе при доступе к защищаемым данным.
Как правило, после аутентификации юзеру сервер назначает куку-идентификатор, с помощью которой тот автоматически проходит авторизацию (если права/роли позволяют).