1.在pycharm中安装djangorestframework-jwt插件
pip install djangorestframework-jwt
2.在settings.py中进行配置
REST_FRAMEWORK = {
'DEFAULT_AUTHENTICATION_CLASSES' (
'rest_framework_jwt_authentication.JSONWebTokenAuthentication',
)
}
import datetime
# 设置过期时间
JWT_AUTH = {
'JWT_EXPIRATION_DELTA':datetime.timedelta(days=3)
}
3.设置路由
from rest_framework_jwt.views import obtain_jwt_token
urlpatterns = [
path('login/', obtain_jwt_token), #视图函数
]
4.自定义返回数据
返回的数据是json形式且默认返回token
def jwt_response_payload_handler(*args, **kwargs):
token, user, request = args
return {
'code': 200,
'username': user.username,
'user_id': user.id,
'token': token
}
5.修改settings.py中的配置
JWT_AUTH = {
'JWT_EXPIRATION_DELTA': datetime.timedelta(days=3),
# 自定义返回数据
'JWT_RESPONSE_PAYLOAD_HANDLER': 'users.myutils.jwt_response_payload_handler',
}