gpt4 book ai didi

python - JWT 与 Django 集成

转载 作者:太空宇宙 更新时间:2023-11-03 16:17:22 25 4
gpt4 key购买 nike

我是 Django(不是 DRF)的新手,我很难配置我的身份验证要求。我有一个外部身份验证服务,可以获取用户名和密码并返回 JWT。获得 JWT 后,我应该如何保存 token 并为来自浏览器的每个请求提供它。之后我可以在哪里验证它?

谢谢!

最佳答案

对于您的服务收到的每个调用,都应该有该调用的 header

{'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 .

关于python - JWT 与 Django 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38831298/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com