首页 > 其他 > 详细

DRF-JWT用户认证

时间:2019-06-16 17:35:41      阅读:87      评论:0      收藏:0      [点我收藏+]
pip install djangorestframework-jwt



INSTALLED_APPS = [
    ...
    rest_framework,
    rest_framework.authtoken,  # 设置token
    ...
]
REST_FRAMEWORK = {
    ...
    # 添加JWT全局认证
    DEFAULT_AUTHENTICATION_CLASSES: (
        rest_framework_jwt.authentication.JSONWebTokenAuthentication,

    ),
    }
# 自定义token过期时间
import datetime
JWT_AUTH = {
    JWT_EXPIRATION_DELTA: datetime.timedelta(seconds=86400),

 

from  django.contrib.auth.models import Group
from rest_framework.permissions import IsAuthenticated
from  .serializers import UserGroupsSerializer

class UserGropInfoViewset(viewsets.ModelViewSet):
    permission_classes = (IsAuthenticated,)
    queryset = Group.objects.all()
    serializer_class = UserGroupsSerializer

路由

# 当前app下的router.py
from  rest_framework.routers import DefaultRouter
from  .views import UserGropInfoViewset
group_router = DefaultRouter()

group_router.register(GroupsInfo,UserGropInfoViewset,base_name=GroupsInfo)

# 全局url.py
# 在你的urls.py文件中配置如下:
from  rest_framework.routers import DefaultRouter
route = DefaultRouter()
from users.router import group_router
route.registry.extend(group_router.registry)

# 配置jwt路由
from rest_framework_jwt.views import obtain_jwt_token
urlpatterns = [
    url(r^, include(route.urls)),
    url(r^api-auth,include(rest_framework.urls,namespace=rest_framework)),
    # 使用jwt验证
    url(r^api-token-auth/, obtain_jwt_token),

#drf自带的token认证模式
url(r‘^api-token-auth/‘, views.obtain_auth_token),

DRF-JWT用户认证

原文:https://www.cnblogs.com/orvis/p/11032094.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!