HttpOnly cookie в NextJS + Redux + Django API для хранения JWT

Я использую NextJS во фронтенде, Django API в бэкенде вместе с DRF и JWT для аутентификации и redux для управления состоянием.

Почти все мои маршруты требуют аутентификации.

Я могу хранить токены и получать к ним доступ в куках только по http через NextJS routes API, но поскольку я использую и Redux, все мои запросы проходят следующим образом;

запрос пользователя -> действие redux -> маршрут nextjs -> backend

Нормально ли это? Я должен реализовать nextjs route для каждого маршрута, чтобы получить доступ к http-only cookie и отправить его на конечную точку бэкенда, так как маршрут требует аутентификации. Это утомительно для реализации и поддержки, у меня сотни маршрутов.

Есть ли другой способ добиться этого эффективно?

У меня была такая же проблема с front-end, Есть несколько способов сделать это, Я обрабатываю это на стороне back-end, у меня есть маршруты для obtain token и refresh token, когда запрос приходит на obtain token, я устанавливаю токен на HTTP Only Cookie, то же самое для refresh token, но таким образом вы не сможете использовать ваш бэкэнд на других источниках, кроме web, это свяжет ваш бэкэнд с web, другой способ - написать свой собственный API на NextJs, который будет запрашивать маршрут obtain token в бэкэнде, затем хранить его на стороне NextJs, и каждый раз, когда вам нужен токен, вызывать ваш NextJs API.

Таким образом вы разделите front-end и back-end.

Вернуться на верх