Django JWT Auth для пользовательской модели

У меня есть пользовательская модель пользователя

class User(models.Model):
    fields...

В нем также есть поле электронной почты, поле пароля среди других детальных полей. Я хочу использовать JWT авторизацию simplejwt, которая принимает email и пароль в качестве входных данных и генерирует JWT токены. Большинство руководств включают создание суперпользователя и передачу имени пользователя паролю суперпользователя для получения токена, но я хочу сделать это для моей пользовательской модели пользователя.

REST-реализация системы аутентификации Django. DJOSER

Начало работы с Джосером

Также вам нужен MOD HEADER, который является расширением в Chrome Добавьте его отсюда

После того, как ваш проект Django запущен, перейдите на страницу localhost:8000/auth/jwt/create/ для создания access token путем представления username и password (т.е. методом POST)

После создания access token вам нужно установить его в MOD HEADER в Request Header и все готово. Это JSON веб-токен, поэтому вам нужно добавить к нему префикс JWT и затем access token

A sample look

django-simple-jwt генерирует токены доступа и обновления через obtainTokenPairView. Это представление вызывает функцию authenticate из django. Поэтому, если вы настроили пользовательскую модель пользователя, следуя рекомендациям django, чтобы использовать email вместо имени пользователя, django-simple-jwt должен работать из коробки

В противном случае у вас остается возможность создать собственное представление и Генерировать маркеры вручную

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