echo jwt カスタム コードが機能しないのはなぜですか?

WBOY
リリース: 2024-02-08 22:50:34
転載
1152 人が閲覧しました

为什么我的 echo jwt 自定义代码不起作用?

php エディターの Yuzai は読者からよく質問を受けるのですが、よくある質問の 1 つが「echo jwt のカスタム コードが動作しないのはなぜですか?」というものです。 JWT (JSON Web Token) を使用すると、いくつかの一般的な問題が原因でカスタム コードが機能しない状況が発生することがあります。この記事では、この質問に詳しく答え、読者がこの悩ましい問題を解決するのに役立つ解決策を提供します。見てみましょう!

質問内容

ユーザー認証にecho jwtを使用しているのですが、マニュアルを見ながらカスタマイズしたのですが反映されません。 2つのことが欲しいです。

  1. ベアラー キーワードを使用せずにトークン チェックを実行したいです

  2. トークンが見つからない場合やトークンが無効な場合に適したエラーメッセージを返したい。

希望する効果を得るために上記のコードを変更するにはどうすればよいですか?

私は golang を学び始めたばかりです。アドバイスをいただければ幸いです

output := echojwt.JWT(&echojwt.Config{
        SigningKey:  []byte(key.EnvSecretKey),
        TokenLookup: "header:Authorization",
        ErrorHandler: func(c echo.Context, err error) error {
            if err != nil {
                return c.JSON(400, "custom error")
            }
            return nil
        },
    })
ログイン後にコピー

解決策

次の手順に従ってください:

  1. 「bearer」キーワードを使用しないトークン チェック: これを行うには、 tokenlookup の値を「header:authorization」から次のように変更できます。 「クエリ: トークン」。これにより、トークンをクエリとして渡すことができます ヘッダーの代わりにパラメーターを使用します。

  2. 状況に応じたカスタム エラー メッセージを返す トークンが見つからないか無効です: これを行うには、次のことができます。 エラー処理関数を変更

これは例です:

リーリー

以上がecho jwt カスタム コードが機能しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:stackoverflow.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!