Vue + Django 2.0.6 学习笔记 7.5 json web token方式完成认证

如何在Django中使用jwt呢?

首先安装jwt插件

进入虚拟环境然后执行:pip install djangorestframework-jwt

官方文档:http://getblimp.github.io/django-rest-framework-jwt/

接着在settings.py中添加jwt认证

REST_FRAMEWORK = {
    'DEFAULT_PAGINATION_CLASS': 'rest_framework.pagination.PageNumberPagination',
    'DEFAULT_AUTHENTICATION_CLASSES': (
            'rest_framework.authentication.BasicAuthentication',
            'rest_framework.authentication.SessionAuthentication',
# 这条
            'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
        )
}

然后去urls.py中添加路由

from rest_framework_jwt.views import obtain_jwt_token


urlpatterns = [
    path('jwt_auth/', obtain_jwt_token),
]

测试是否成功:

Vue + Django 2.0.6 学习笔记 7.5 json web token方式完成认证_第1张图片

成功则返回jwt_token

Vue + Django 2.0.6 学习笔记 7.5 json web token方式完成认证_第2张图片

拿着这个token去测试看能不能获得用户信息:

在GoodsListViewset类所继承的ListModelMixin中打上断点

Vue + Django 2.0.6 学习笔记 7.5 json web token方式完成认证_第3张图片

Vue + Django 2.0.6 学习笔记 7.5 json web token方式完成认证_第4张图片

点击Send然后去看断点中的request中的user是否是admin

Vue + Django 2.0.6 学习笔记 7.5 json web token方式完成认证_第5张图片

如果有就表示没问题  

完结

你可能感兴趣的:(Django,Django,JWT)