国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

詳解Django配置JWT認證方式

瀏覽:200日期:2024-10-08 18:30:38

1. 安裝 rest_framework + djangorestframework_simplejwt

安裝djangorestframework_simplejwt : pip install djangorestframework-simplejwt

安裝rest_framework: pip install djangorestframework

djangorestframework_simplejwt 是提供 jwt 的 django 應用。

2. 配置好 rest_framework 后,settings.py 里加上以下內容以支持 jwt認證

REST_FRAMEWORK = { ’DEFAULT_AUTHENTICATION_CLASSES’: [ ’rest_framework_simplejwt.authentication.JWTAuthentication’, ],}

3. 寫個測試的 view

from rest_framework import permissionsfrom rest_framework_simplejwt import authenticationclass TestView(views.APIView): permission_classes = [permissions.IsAuthenticated] authentication_classes = (authentication.JWTAuthentication,) def get(self, request, *args, **kwargs): return Response(’ok’)

4.urls.py 導入 jwt 的兩個 view

from rest_framework_simplejwt.views import ( TokenObtainPairView, TokenRefreshView, )urlpatterns = [ ... url(r’^api/auth/token/obtain/$’, TokenObtainPairView.as_view()), # 需要添加的內容 url(r’^api/auth/token/refresh/$’, TokenRefreshView.as_view()), # 需要添加的內容 url(r’^api/test/$’, TestView.as_view()), # 添加測試views的路由 ...]

5. 獲取Token

先啟動 server 端口為默認的8000

方式一:通過curl

cmd 里運行 curl,獲取 token

curl -X POST -H 'Content-Type: application/json' -d ’{'username': 'abab', 'password': 'abab123456'}’ http://localhost:8000/api/auth/token/obtain/

結果返回了 token

{'access':'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwidXNlcl9pZCI6MywianRpIjoiZDRlMTJiMjk0M2ZiNGFkYTg1NzZiNWIzMzcyY2RlMjQiLCJleHAiOjE1MzE1MDY5Njl9.S1MPTw359xVK-GpmJary1fZwDsHb8yXsVtyf-tCbHM8','refresh':'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoicmVmcmVzaCIsInVzZXJfaWQiOjMsImp0aSI6IjAyYWM3NmQ0MDBkNzRlYzNhOGU5NDM2MWYzYzUzMWQyIiwiZXhwIjoxNTMxNTkzMDY5fQ.rXkYG2SJ74vof3rA38xX-EfMagHxeQRv7ZolszofuHA'}

方式二:通過PostMan 軟件

只需要設置如下三個地方就可以了

詳解Django配置JWT認證方式

6. 提供 token,獲取 testview 的信息

方式一:通過curl

curl > -H 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ0b2tlbl90eXBlIjoiYWNjZXNzIiwidXNlcl9pZCI6MywianRpIjoiZDRlMTJiMjk0M2ZiNGFkYTg1NzZiNWIzMzcyY2RlMjQiLCJleHAiOjE1MzE1MDY5Njl9.S1MPTw359xVK-GpmJary1fZwDsHb8yXsVtyf-tCbHM8' > http://localhost:8000/api/test/'ok'

方式二:通過PostMan 軟件

設置如下幾個地方,看你的接口是Get請求還是Post請求,自己設置接口請求方式。

Token 填寫的是上一步獲取到的Token內容

詳解Django配置JWT認證方式

默認Token過期時間為5分鐘,可以通過設置修改過期時間,設置方法和詳細設置文檔,去Bigyoung小站(bigyoung.cn)查看進階內容。

到此這篇關于Django 配置JWT認證方式的文章就介紹到這了,更多相關Django 配置JWT認證方式內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Django
相關文章:
主站蜘蛛池模板: 疏勒县| 龙口市| 汝南县| 夏津县| 绥江县| 安西县| 横山县| 密山市| 成安县| 武平县| 辽阳市| 阳曲县| 永春县| 平武县| 晋宁县| 靖江市| 象山县| 商城县| 文水县| 兴仁县| 宽城| 德庆县| 治多县| 秦皇岛市| 久治县| 临洮县| 蓬溪县| 武隆县| 柳州市| 吉木乃县| 东台市| 天祝| 皋兰县| 宜章县| 德化县| 上林县| 富阳市| 友谊县| 曲水县| 红桥区| 讷河市|