2.xのマイクロチャネルは、オンライン教育サイトプロジェクトの戦闘を支払う_5-10.Springboot2.xユーザーが迎撃戦闘を開発するためにログオン-SpringBoot D小さな教室

注釈

10、Springboot2.xユーザーは迎撃戦闘開発にログオン
    はじめに:ユーザーのログイン戦闘開発迎撃迎撃LoginInterceptor
        
        1、道具をHandlerInterceptorインタフェースLoginInterceptor実装

        2を、書き換えpreHandler
             文字列= accessToken request.getHeader(「トークン」);
            IF(accessToken =ヌル=){
                accessToken = request.getParameter() "トークン";
            }
            IF(accessToken = NULL){!
                クレーム請求= JWTUtils.checkJWT(accessToken);
                整数ID =(整数)claims.get( "ID");
                文字列=名(文字列)claims.get( "名前");
                request.setAttribute( "USER_ID"、ID);
                request.setAttribute( "名前"、名);
                //普通用户
                trueを返します。

            }
            falseを返します。
        3、配置拦截器 
        @Configuration
        InterceptorConfigはWebMvcConfigurer実装

         @Override
        ます。public void addInterceptors(InterceptorRegistryレジストリ){

            。registry.addInterceptor(新LoginInterceptor())addPathPatterns( "/ユーザー/ API / V1 / * / **を");

            WebMvcConfigurer.super.addInterceptors(レジストリ);
        }



        4、响应前端数据
        
        パブリック静的ボイドsendJsonMessage(HttpServletResponseの応答、オブジェクトobj)は例外{スロー
            Gson G =新しいGsonを();
            response.setContentType( "アプリケーション/ JSON;のcharset = UTF-8");
            PrintWriterのライター= response.getWriter();
            writer.print(g.toJson(OBJ))。
            writer.close();
            response.flushBuffer();
        }

始めます

ログインインターセプタが作成

インタフェースを実装し、メソッドのオーバーライドする

オーバーライドメソッドは、

インタフェースのいくつかのデフォルトの方法があります。新機能jdk8

コントローラに入る前に、切片は

まず、トークンを取得する必要があります。あなたは、ヘッダーの中に入ることができない場合。これは、内部のパラメータから取得されます。

復号化されたトークン値取得

変数Gson用の上部に定義されている

それぞれのデータ処理パッケージ


ここでは再度特許請求の範囲を判別ヌルに等しくない

上記の方法が本明細書にスローするように修正されなければならない異常

だけでなく間違っここでここでIDユーザーIDを。

コネクタ構成

新しいインターセプタープロファイル

増加@Configurationが、これはWebMvcConfigurerインターフェイスを実装、設定ファイルであることを示している

インタフェース内のメソッドを書き換え、




それらにレジストリを。これは、登録するには良い傍受を置きます。

新OrderControllerは

主に着陸するかどうかを判断シミュレートするために使用されます。

テスト

サービス開始
アクセスビデオにアクセスすることができます。

パスのアクセスユーザーは、インターセプタをブロックされます。

インターセプタでのブレークポイントのデバッグは

何気なく過去にトークン値を渡す


がありますが、トークン値が、復号化は失敗します

ドメインのデバッグ

スキャンコードを取得するためのURLアドレス


このトークンを取得するには、成功したジャンプを、ダウンコピー

トークンダウンコピーを


トークンダウンコピーします。次に訪れ行く


内部の迎撃ブレークポイントに。首尾よく解読得たと主張して


次のシングルのリリースを成功に求めるメッセージが表示されます







 

おすすめ

転載: www.cnblogs.com/wangjunwei/p/11488559.html