25 drf-jwt安装和简单使用
# 使用第三方模块,快速签发和认证token pip3 install djangorestframework-jwt
from rest_framework_jwt.views import obtain_jwt_token
# 在路由中配置,创建一个超级用户即可createsuperuser path('login/', obtain_jwt_token),
2.2 创建超级用户
python manage.py createsuperuser
#views.py
# 只需要在视图类中配置认证类和权限类 from rest_framework_jwt.authentication import JSONWebTokenAuthentication
from rest_framework.permissions import IsAuthenticated
class TestView(APIView):
# 只写这一个认证类,如果没有携带token,并不会限制,需要搭配一个权限类,来完成登录认证
authentication_classes = [JSONWebTokenAuthentication,]
permission_classes = [IsAuthenticated,]
def get(self,request):
return Rseponse("你必须登录才能看到")
# 访问的时候,必须把token放到请求头中
key:Authorization
valeu:JWT
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VybmFtZSI6ImFkbWluIiwiZXhwIjoxNjQ0MjkwNDQwLCJlbWFpbCI6IjNAcXEuY29tIn0.FxsDGHQg-aXV7Svt3yRk0mjawH71fa_LYXo77N0OWM
总结:
JSONWebTokenAuthentication认证需要带jwt+空格+token,不然不认证
JSONWebTokenAuthentication+IsAuthenticated强制认证,格式还是jwt+空格+token