Как получить JWT-токены от пользователя в Django RestFramework
У меня есть проект DRF, использующий Simple-JWT для аутентификации. Когда пользователь входит в систему, он получает ответ, содержащий токены доступа и обновления в serializer.data
. Однако:
При тестировании на Apis я могу вручную скопировать и вставить эти токены и добавить их в заголовки при выполнении запросов. Однако в производстве,
- Где хранятся эти токены на стороне пользователя?
- Как пользователь сможет добавить токен
access
к запросам, которые защищены? (они не могут копировать-вставить, как я) .
- Как они будут использовать токен
refresh
для обновления токенаaccess
.
Буду признателен, если кто-нибудь прояснит для меня этот вопрос.
Итак, если вы говорите о клиентской стороне, где пользователи будут использовать ваше приложение с помощью front-end:
Токены могут храниться в локальном хранилище вашего браузера
.Все аутентифицированные запросы URL должны содержать токен bearer, куда вы добавите
access_token
, который ваш API вернет после аутентификации и который в настоящее время сохранен в вашем локальном хранилище.для получения refresh token, добавьте URL, как показано ниже, куда вы отправите post запрос:
from rest_framework_simplejwt.views import ( TokenObtainPairView, TokenRefreshView, TokenVerifyView, ) urlpatterns = [ ... path( 'token/refresh/', TokenRefreshView.as_view(), name='token_refresh', ), ... ]