概要
djangoでJWTを使おうと思い、djangorestframework-jwtを使ってみました。
GitHub - jpadilla/django-rest-framework-jwt: JSON Web Token Authentication support for Django REST Framework
JSON Web Token Authentication support for Django REST Framework - jpadilla/django-rest-framework-jwt
以下のサイトなどを参考にすすめてみました。

ジャンゴ(django)でJWTを使う方法
ジャンゴ(django)のプロジェクトでAPIを使う時、JWT(Json Web Token)認証を使う方法について説明します。
ただし、'rest_framework_jwt.authentication.JSONWebTokenAuthentication'を記述したところで、以下のエラーが発生しました。
ImportError: cannot import name 'smart_text' from 'django.utils.encoding'
調べたところ、以下の記事が見つかりました。
Could not import 'rest_framework_jwt.authentication.JSONWebTokenAuthentication' for API setting 'DEFAULT_AUTHENTICATION_CLASSES'
Full Error:
Could not import 'rest_framework_jwt.authentication.JSONWebTokenAuthentication' for API setting 'DEFAULT_AUTHENTICATION_CLASSES'. ImportError: cannot import name 'smart_text' from 'django.
かわりにdjangorestframework-simplejwtを使え、とのことでした。
GitHub - jazzband/djangorestframework-simplejwt: A JSON Web Token authentication plugin for the Django REST Framework.
A JSON Web Token authentication plugin for the Django REST Framework. - jazzband/djangorestframework-simplejwt
以下、こちらの使い方についてメモを残します。
djangorestframework-simplejwt
以下のページを参考にすることで、動作確認を行うことができました。
Getting started — Simple JWT 0.0.post50+ge9120d415 documentation
Postman
usernameとpasswordを使って、以下にpostします。
http://localhost:8000/api/token/
結果、refreshとaccessが得られます。

このaccessのほうの値を使用して、HeaderにAuthorizationを設定して送ります。Bearer [jwt]の形式で送ることで、apiを利用できました。

まとめ
djangoでJWTを使う際の参考になりましたら幸いです。
動画版(生成AIによる自動生成): この記事の内容をずんだもん×四国めたんの掛け合いで解説しています。自動生成のため、内容に誤りがある可能性があります。正確な情報は記事本文をご参照ください。



コメント
…