以下の内容はhttps://nainaistar.hatenablog.com/entry/not-enough-segments-messageより取得しました。


Not enough segments というエラーメッセージが発生した

二度目がないようにメモ。

どこにも実装していないNot enough segmentsというエラーが発生したので、どこで発生したかを確認するためのメモ。

環境

  • Python
    • 3.12
  • PyJWT
    • 2.8.0

原因

JWTとして無効な形式の文字列をdecodeしていたため。

本来であれば、次の形式の文字列になるはずだったが異なるJWTをdecodeしていた。 <base64_encoded_header>.<base64_encoded_payload>.<signature>

エラーメッセージ自体はライブラリが発生させている。全てのライブラリを調べてないが、PythonのJWTライブラリの場合はこのエラーメッセージになっていそう。少なくとも、PyJWTpython-joseflask_jwt_extendedはこのメッセージの模様。

対応

正しいエラーメッセージだったので対応しない。ただし、JWT形式を無視したトークンで送信していたシステムに対して是正依頼。

ソースコード

終わりに

対策も何もしていないのでJWTの形式の共有、事例紹介というのをメインに共有します。

参考情報




以上の内容はhttps://nainaistar.hatenablog.com/entry/not-enough-segments-messageより取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14