我正在使用 PyJWT==1.4.2 生成我打算用于 Firebase 身份验证的令牌。
不幸的是,我无法使用任何第三方 Python Firebase 库,即使可以,我在尝试使用 FirebaseTokenGenerator 时也遇到了同样的困难。
在我的 API 内部,我有一个为用户名生成令牌的函数。
118 def generate_token(self, username):
119 payload = {
120 'something': 'Here',
121 }
122 secret = "TESTSECRET"
123 token = jwt.encode(
124 payload,
125 secret,
126 algorithm='HS256')
127 return token
我从此函数获得的令牌示例是:
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzb21ldGhpbmciOiJIZXJlIn0.fpIMSRJ3AAL30LIDwHJM9ZOumdRzS7yooiiUgMPms2Y
不幸的是,这不是一个有效的令牌。https://jwt.io/等在线资源告诉我签名部分无效。
不确定这是否是进一步有用的信息,但是当我尝试解码令牌时,我得到以下信息:
b'{"alg":"HS256","typ":"JWT"}{"something"[83 chars]\x88'
关于我可能做错了什么的任何想法?