Django中怎么配置JWT认证
发表于:2024-11-20 作者:千家信息网编辑
千家信息网最后更新 2024年11月20日,今天就跟大家聊聊有关Django中怎么配置JWT认证,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1. 安装 rest_framework +
千家信息网最后更新 2024年11月20日Django中怎么配置JWT认证
今天就跟大家聊聊有关Django中怎么配置JWT认证,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
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 软件
只需要设置如下三个地方就可以了
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认证有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。
内容
方式
认证
配置
地方
接口
软件
支持
测试
三个
两个
信息
更多
知识
端口
篇文章
结果
行业
资讯
资讯频道
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
萧山大数据库
数据库什么笔记本
数据库匹配时间段
移动网络技术通熟解释
你了解网络安全国家相关政策
快门网络技术有限公司代运营
温州联欣网络技术有限公司
陕西综合农业信息系统数据库
服务器有回收价值吗
安徽省红包软件开发
上海威力网络技术案例
rails 数据库操作
linux服务器遭攻击
网络安全从我做起英文
2020网络安全法宣传标语
软件开发教程有哪些
江西地区服务器是哪里的云空间
NA证书里面有什么网络技术
u8可以用数据库清退用户吗
许可证服务器系统计算机名
数据库设计主要分为哪几部分
网络安全法对社交平台
怎么创建匿名ftp服务器
服务器断网还在运行吗
网络安全法解读责任
c连接数据库实现增删改查
网络技术深入
制定网络安全的计划
江苏小程序app软件开发
公司预算管理软件开发教程