如何解决django中不允许指定alg值的错误

如何解决django中不允许指定alg值的错误,django,python-3.x,jwt,Django,Python 3.x,Jwt,我试图解码从身份验证服务接收到的某个JWT字符串,但收到一个错误指定的alg值是不允许的。可能是什么问题?我验证了我应该使用的算法是HS256 当我试图解码JWT字符串时,它正在被解码 代码片段 try: print(jwt_value) decoded = jwt.decode(jwt_value, 'secret', algorithms=['HS256']) print(decoded) except Exception as

我试图解码从身份验证服务接收到的某个JWT字符串,但收到一个错误
指定的alg值是不允许的
。可能是什么问题?我验证了我应该使用的算法是HS256

当我试图解码JWT字符串时,它正在被解码

代码片段

    try:
        print(jwt_value)
        decoded = jwt.decode(jwt_value, 'secret', algorithms=['HS256'])
        print(decoded)
    except Exception as e:
        print(e)
JWT设置

JWT_AUTH = {
    # 'JWT_EXPIRATION_DELTA': datetime.timedelta(seconds=36000),
    'JWT_ENCODE_HANDLER':
    'rest_framework_jwt.utils.jwt_encode_handler',

    'JWT_DECODE_HANDLER':
    'rest_framework_jwt.utils.jwt_decode_handler',

    'JWT_PAYLOAD_HANDLER':
    'sbp.custom_jwt.jwt_payload_handler',

    'JWT_PAYLOAD_GET_USER_ID_HANDLER':
    'rest_framework_jwt.utils.jwt_get_user_id_from_payload_handler',

    'JWT_RESPONSE_PAYLOAD_HANDLER':
    'sbp.custom_jwt.jwt_response_payload_handler',

    'JWT_SECRET_KEY': 'secret',
    'JWT_GET_USER_SECRET_KEY': None,
    'JWT_PUBLIC_KEY': None,
    'JWT_PRIVATE_KEY': None,
    'JWT_ALGORITHM': 'HS256',
    'JWT_VERIFY': True,
    'JWT_VERIFY_EXPIRATION': True,
    'JWT_LEEWAY': 0,
    'JWT_EXPIRATION_DELTA': datetime.timedelta(seconds=36000),
    'JWT_AUDIENCE': None,
    'JWT_ISSUER': None,

    'JWT_ALLOW_REFRESH': False,
    'JWT_REFRESH_EXPIRATION_DELTA': datetime.timedelta(days=7),

    'JWT_AUTH_HEADER_PREFIX': 'JWT',
    'JWT_AUTH_COOKIE': None,
}

令牌的标头包含
“alg”:“HS256”
?我似乎找不到它,但当我尝试打印
请求时。META
这是最小的相关数据<代码>{'REQUEST_METHOD':'POST','SERVER_PROTOCOL':'HTTP/1.0','HTTP_HOST':'web','HTTP_CONNECTION':'close','CONTENT_LENGTH':'0','CONTENT_TYPE':'application/json','HTTP_AUTHORIZATION':'JWT eyJhb1Fq-VWeoWUCmjbAM90pNwb6K5Ljiegw4_TdRo','HTTP_USER_AGENT':'PostmanRuntime/7.19.0','HTTP_ACCEPT':'*/*','HTTP"接受','HTTP""""""""""HTTP""e6-8c1e-4fef7c5f643e',“HTTP_ACCEPT_ENCODING':“gzip,deflate”}你说你可以在jwt.io解码jwt?在你的请求meta中我看到了
jwt eyJhb1Fq-VWeoWUCmjbAM90pNwb6K5Ljiegw4\u TdRo
,它不是一个有效的jwt。
打印的输出(jwt值)
?我缩短了它,反正它太长了,让met发布你试试。我只需要在第一个
之前的第一部分(标题)。令牌的标题包含
“alg”:“HS256”
?我似乎找不到它,但当我尝试打印
请求时。META
这是最小的相关数据。
{'REQUEST_METHOD':'POST','SERVER_PROTOCOL':'HTTP/1.0','HTTP_HOST':'web','HTTP_CONNECTION':'close','CONTENT_LENGTH':'0','CONTENT_TYPE':'application/json','HTTP_AUTHORIZATION':'JWT eyJhb1Fq-VWeoWUCmjbAM90pNwb6K5Ljiegw4_TdRo','HTTP_USER_AGENT':'PostmanRuntime/7.19.0','HTTP_ACCEPT':'*/*','HTTP"接受','HTTP""""""""""HTTP""e6-8c1e-4fef7c5f643e',“HTTP_ACCEPT_ENCODING':“gzip,deflate”}
你说你可以在jwt.io解码jwt?在你的请求meta中我看到了
jwt eyJhb1Fq-VWeoWUCmjbAM90pNwb6K5Ljiegw4\u TdRo
,它不是一个有效的jwt。
打印的输出(jwt值)
?我缩短了它,反正它太长了,让met发布你试试。我只需要第一个
之前的第一个部分(标题)