私はPyJWT == 1.4.2を使用して、Firebase認証に使用するトークンを生成しています。不正なトークン署名を返すPyJWT
残念ながら、私はFirebaseTokenGeneratorで試したときに同じ難しさを抱えていたとしても、残念ながら私はサードパーティのPython Firebaseライブラリを使用できません。
私の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'
私が間違っているかもしれないもの上の任意の考え?
*キーボードの頭が壊れています。それは確かに問題でした。 さらに、私はJWTのデコードが必ずしも正しく表示されないことに気づいていませんでした。私がそうしようとしたとき ** decoded = base64.b64decode(トークン)** 私は "間違ったパディング"エラーまたは私のペイロードのカットオフバージョンがあります。そのリソースは非常に役立ちます、ありがとう! –
ソフトウェア開発では、常に私たちを得る小さな細部...クラブにようこそ。 :) –