python中django对jwt的配置和获取

第一步、设置配置文件

1、安装在虚拟环境中安装扩展包
pip install djangorestframework-jwt
2、在drf中配置jwt

REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': (
       ......
       # 设置jwt的认证方式
'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
        .......
    ),
}

3、JWT_EXPIRATION_DELTA 指明token的有效期

JWT_AUTH = {
    'JWT_EXPIRATION_DELTA': datetime.timedelta(days=1),
}

第二步、获取token

实现步骤:
1、导入api_settings模块
2、定义token(模型类对象)方法
3、根据api_settings获取jwt_payload_handler方法
4、跟据api_settings获取jwt_encode_handler方法
5、跟据传入对象获取payload
6、根据payload获取token
7、返回token
8、在视图中调用token方法

代码实现:

def token(user):
    jwt_payload_handler = api_settings.JWT_PAYLOAD_HANDLER
    jwt_encode_handler = api_settings.JWT_ENCODE_HANDLER
    payload = jwt_payload_handler(user)
    token = jwt_encode_handler(payload)
    user.token = token
    return user

版权声明:本文为weixin_43613053原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。