为了在 django 中验证 auth0 的 jwt token ,我在 settings.py 中使用以下代码
def jwt_get_username_from_payload_handler(payload):
return 'authuser'
JWT_AUTH = {
'JWT_PAYLOAD_GET_USERNAME_HANDLER': jwt_get_username_from_payload_handler,
'JWT_PUBLIC_KEY': PUBLIC_KEY,
'JWT_ALGORITHM': 'RS256',
'JWT_AUDIENCE': API_IDENTIFIER,
'JWT_ISSUER': JWT_ISSUER,
'JWT_AUTH_HEADER_PREFIX': 'Bearer',
}
其中 authuser 是用户名。因此,我不想直接编写它,而是想在请求 header 中接收它并传递它。请帮助我以这种方式自定义此函数 - jwt_get_username_from_payload_handler。 TIA
最佳答案
def jwt_get_username_from_payload_handler(user):
return {
'username': user.username,
'email': user.email,
'is_superuser': user.is_superuser,
}
你可以使用这个功能
关于django 2 自定义 jwt_get_username_from_payload_handler,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49994188/