Django rest-framework JWT authentication

PythonServer Side ProgrammingProgramming

If you ever worked with Django REST framework, then you surely know about JWT authentication. JWT authentication is used for token authentication and it is really a popular method for authentication in Django. JWT stand for JSON Web Token. Let's see how to work with it.

First, install a package −

pip install djangorestframework-simplejwt
pip install djangorestframework

We are not going to need an App for this, we will just do a basic setup for Django REST framework frontend and authentication backend.

Example

In settings.py, add the following −

INSTALLED_APPS = [
...
'rest_framework_simplejwt',
'rest_framework'
...
]
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework_simplejwt.authentication.JWTAuthentication',
   )
}

Here, we added the rest_framework and JWT auth framework as an app and for authentication backend, we added JWT auth.

In project's urls.py

from django.urls import path
from rest_framework_simplejwt.views import (
   TokenObtainPairView,
   TokenRefreshView,
)
urlpatterns = [
   path('admin/', admin.site.urls),
   path('api/token/', TokenObtainPairView.as_view(), name='t
oken_obtain_pair'),
   path('api/token/refresh/', TokenRefreshView.as_view(), na
me='token_refresh'),
]

Here, we added two extra urls, one is for generating token in with username and password and the other is for authentication using generated token.

Output


raja
Published on 25-Aug-2021 13:09:50
Advertisements