ホームページ >バックエンド開発 >Golang >無効なメモリアドレスまたは nil ポインタ逆参照検証 jwt 有効期限

無効なメモリアドレスまたは nil ポインタ逆参照検証 jwt 有効期限

WBOY
WBOY転載
2024-02-08 22:10:18483ブラウズ

无效的内存地址或 nil 指针取消引用验证 jwt 过期时间

php エディタ Xiaoxin では、JWT の有効期限を確認する際の一般的な問題を紹介します。認証に JWT を使用する場合、多くの場合、トークンの有効期限が切れているかどうかを確認する必要があります。ただし、無効なメモリ アドレスや nil ポインタの逆参照などのエラーが発生する場合があります。これらのエラーにより、トークンの検証が失敗する可能性があります。この記事では、これらの問題の原因を分析し、JWT の有効期限を正常に確認するための解決策を提供します。

質問の内容

golang を使用してログインするために jwt トークンを使用しています。これまでのところ、すべてがうまくいっています。トークンの残り時間がチェックされ、トークンがない場合は Aメッセージが送信されます しかし、問題が 2 つあります。トークンが無効であるか、有効期限が過ぎている場合、次のエラーが表示されます:

エラーを伝える行は次のようになります claims := token.claims.(*jwtcustomclaims)

私の jwtcustomclaims 変数は次のようになります:

リーリー

この構造を使用するとトークンも生成されます。トークンをチェックする完全な関数はこれです

リーリー

トークンが検証されるかどうかを確認するために、別のプロジェクトから別のタイプのトークンを入れてテストするために間違って書き込もうとしましたが、コンソール エラーが送信されます。有効期限については、オンラインでエラーを調べたところ、解決策は次のように記述することでした ifclaims == nil しかし、それは機能せず、他に何をすべきかわかりません

解決策

テストしてください:

リーリー

以上が無効なメモリアドレスまたは nil ポインタ逆参照検証 jwt 有効期限の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はstackoverflow.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。