django-basic-jwt-auth
Accounts is a Django app to authenticate user using JWT Token on custom users.
1. Install dependencies
$ pip install rest_framework
$ pip install rest_framework_simplejwt
$ pip install django-cors-headers
$ install -i https://test.pypi.org/simple/ django-basic-jwt-auth
setting.py
like this:
2. Add "accounts" to your INSTALLED_APPS INSTALLED_APPS = [
...
'accounts',
...
]
settings.py
:
3. add the following codes to the AUTH_USER_MODEL = 'accounts.User'
...
...
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': [
'rest_framework_simplejwt.authentication.JWTAuthentication',
],
}
4. Run migrations
$ python manage.py migrate
5. Access the views
from django.contrib import admin
from django.urls import path
from accounts import views
from rest_framework_simplejwt import views as jwt_views
urlpatterns = [
path('admin/', admin.site.urls),
path('register/', views.CreateAccountView.as_view(),
name='user-register'),
path('token/', jwt_views.TokenObtainPairView.as_view(),
name='token_obtain_pair'),
path('token/refresh/', jwt_views.TokenRefreshView.as_view(),
name='token_refresh'),
path('users/', views.UserListView.as_view(),
name='user-list'),
path('users/<uuid:id>/', views.UserDetailView.as_view(),
name='user-detail'),
path('me/', views.CurrentUserView.as_view(),
name='me'),
]