Как аутентифицировать сайт Gatsby для всех страниц с использованием passport?

#reactjs #passport.js #gatsby

#reactjs #passport.js #gatsby

Вопрос:

У меня есть приложение Gatsby-React, в котором я включил аутентификацию по паспорту с помощью express server. Как я могу включить аутентификацию по паспорту для всех страниц моего приложения gatsby. Структура папок выглядит следующим образом

 app.js                 //Express server using passport stratagy
src/pages/welcome      //Passport authentication is called when navigating from this page to profile
src/pages/profile      //redirects to this page after authentication
         /about        //No Authentication
         /index.js     //No Authentication
src/components         //My components folder
gatsby-node.js
...
  

Как вы могли заметить, когда мы пытаемся перейти на страницу профиля со страницы приветствия, она аутентифицируется путем перенаправления на экспресс (app.js ) стратегия сервера. Впоследствии обратный вызов passport перенаправляет на страницу профиля, и он получает информацию о пользователе. Первая ошибка в этом подходе заключается в том, что приложение позволяет мне посещать url.com/profile страницу при прямом указании url.com/profile в адресной строке (очевидно, что на странице профиля не будет информации о пользователе).).

Чтобы справиться с этим, я планирую предоставить аутентификацию для всех страниц (включая домашнюю страницу, about и welcome). Итак, как я могу эффективно аутентифицировать все страницы (если они не аутентифицированы).