Как обрабатывать сгенерированные API маршруты сброса пароля в Next.js

Я использую Djnago с Djoser в качестве бэкенда, и Next.js в качестве фронтенда.

Когда пользователь запрашивает сброс пароля, он получает письмо со ссылкой на восстановление по следующей схеме http://localhost:3000/password-reset/{uid}/{token}.

Я смог успешно обработать поток восстановления пароля, используя [...params] catch all dynamic route в Next.js. Однако пользователь может перейти на http://localhost:3000/password-reset/abc/def и все равно сможет просмотреть страницу сброса пароля, хотя, очевидно, он не сможет изменить ни один пароль.

Есть ли способ проверить, был ли маршрут сгенерирован бэкендом и установить разрешение страницы на основе этого?

Одна вещь, о которой я могу думать, это шифрование маршрута с помощью ключа и расшифровка его на фронтенде, но я не уверен, нужно ли это делать на фронтенде, бэкенде Next.js или в Djnago. Мне кажется, что я слишком усложняю ситуацию и, возможно, есть более простое решение.

Указание правильного направления было бы очень признательно.

Спасибо

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