我是Django(不是DRF)的新手,我很难配置我的身份验证要求 . 我有一个外部身份验证服务,获取用户名和密码并返回JWT . 在我拥有JWT之后,我应该如何保存令牌并向浏览器提供每个请求 . 之后我可以在哪里验证它?
谢谢!
对于您的服务获得的每个呼叫,应该有该呼叫的标头
{'Authorization':'Token 9944b09199c62bcf9418ad846dd0e4bbdfc6ee4b'}
你可以在views.py中使用它:
if request.user.is_authenticated():
它必须包含在该django项目的设置文件中 .
JWT_AUTH = { # 'JWT_ENCODE_HANDLER': # 'rest_framework_jwt.utils.jwt_encode_handler', # 'JWT_DECODE_HANDLER': # 'rest_framework_jwt.utils.jwt_decode_handler', # 'JWT_PAYLOAD_HANDLER': # 'rest_framework_jwt.utils.jwt_payload_handler', # 'JWT_PAYLOAD_GET_USER_ID_HANDLER': # 'rest_framework_jwt.utils.jwt_get_user_id_from_payload_handler', # 'JWT_RESPONSE_PAYLOAD_HANDLER': # 'rest_framework_jwt.utils.jwt_response_payload_handler', # 'JWT_SECRET_KEY': settings.SECRET_KEY, # 'JWT_ALGORITHM': 'HS256', # 'JWT_VERIFY': True, # 'JWT_VERIFY_EXPIRATION': False, # 'JWT_LEEWAY': 0, 'JWT_EXPIRATION_DELTA': datetime.timedelta(days=1), # 'JWT_AUDIENCE': None, # 'JWT_ISSUER': None, # 'JWT_ALLOW_REFRESH': False, # 'JWT_REFRESH_EXPIRATION_DELTA': datetime.timedelta(days=7), # 'JWT_AUTH_HEADER_PREFIX': 'JWT', }
阅读更多相关信息here .
1 回答
对于您的服务获得的每个呼叫,应该有该呼叫的标头
你可以在views.py中使用它:
它必须包含在该django项目的设置文件中 .
阅读更多相关信息here .