从危险文件 TimedJSONSerializer 令牌加载 JSON 时出错



我目前正在对我的用户进行身份验证。我查看了这个博客 - RESTful Authentication with Flask - 并按照它的步骤生成了一段我认为可以达到我目的的代码。我想将 Timed Json 序列化程序类用于我的特定用例。下面,我将创建该类的对象,生成一个令牌并尝试使用它加载数据。

from itsdangerous import TimedJSONWebSignatureSerializer
user_id = 'fake1'
s = TimedJSONWebSignatureSerializer(parser_app.config['SECRET_KEY'], expires_in=3600)
token = s.dumps({'user_id' : user_id})
print(token)
print (s.loads(token))

我收到以下回调:

Traceback (most recent call last):
eyJhbGciOiJIUzI1NiIsImV4cCI6MTQ2ODI3MjU3MSwiaWF0IjoxNDY4MjY4OTcxfQ.eyJ1c2VyX2lkIjoiZmFrZTEifQ.Ch8y6BDMIIBdIGM0lmjdAimINvP3PnUmBpOp-jDW18w
  File "C:/Users/vaibhav/PycharmProjects/Coding/Coding.py", line 6, in <module>
    print (s.loads(token))
  File "C:UsersvaibhavAnacondalibsite-packagesitsdangerous.py", line 798, in loads
    self, s, salt, return_header=True)
  File "C:UsersvaibhavAnacondalibsite-packagesitsdangerous.py", line 752, in loads
    self.make_signer(salt, self.algorithm).unsign(want_bytes(s)),
  File "C:UsersvaibhavAnacondalibsite-packagesitsdangerous.py", line 377, in unsign
    payload=value)
itsdangerous.BadSignature: Signature 'Ch8y6BDMIIBdIGM0lmjdAimINvP3PnUmBpOp-jDW18w' does not match
我刚刚创建了过期一小时的令牌,

它给了我一个错误签名,指示令牌不匹配。所需的输出将是:

{"user_id" : "fake1"}

请帮帮我。

我最终不得不卸载并重新安装带有pip itsdangerous软件包。使用的语句是:

pip uninstall itsdangerous

其次:

pip install itsdangerous

显然,该文件已以某种方式损坏,导致其无法正常工作。

最新更新