国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

登陸接口的的Filter過濾

這篇具有很好參考價值的文章主要介紹了登陸接口的的Filter過濾。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

一、概述

二、基本操作?

三、登陸檢查接口


一、概述

什么是Filter?

  • Filter表示過濾器,是 JavaWeb三大組件(Servlet、Filter、Listener)之一。

  • 過濾器可以把對資源的請求攔截下來,從而實現(xiàn)一些特殊的功能

    • 使用了過濾器之后,要想訪問web服務器上的資源,必須先經(jīng)過濾器,過濾器處理完畢之后,才可以訪問對應的資源。

  • 過濾器一般完成一些通用的操作,比如:登錄校驗、統(tǒng)一編碼處理、敏感字符處理等。

登陸接口的的Filter過濾,JavaWeb,spring boot,java,后端,Filter,登陸接口過濾

二、基本操作?

下面我們通過Filter快速入門程序掌握過濾器的基本使用操作:

  • 第1步,定義過濾器 :1.定義一個類,實現(xiàn) Filter 接口,并重寫其所有方法。登陸接口的的Filter過濾,JavaWeb,spring boot,java,后端,Filter,登陸接口過濾

  • 第2步,配置過濾器:Filter類上加 @WebFilter 注解,配置攔截資源的路徑。引導類上加 @ServletComponentScan 開啟Servlet組件支持。登陸接口的的Filter過濾,JavaWeb,spring boot,java,后端,Filter,登陸接口過濾

  • 第三部?當我們在Filter類上面加了@WebFilter注解之后,接下來我們還需要在啟動類上面加上一個注解@ServletComponentScan,通過這個@ServletComponentScan注解來開啟SpringBoot項目對于Servlet組件的支持。登陸接口的的Filter過濾,JavaWeb,spring boot,java,后端,Filter,登陸接口過濾

三、登陸檢查接口

具體流程

我們要完成登錄校驗,主要是利用Filter過濾器實現(xiàn),而Filter過濾器的流程步驟:登陸接口的的Filter過濾,JavaWeb,spring boot,java,后端,Filter,登陸接口過濾

?

基于上面的業(yè)務流程,我們分析出具體的操作步驟:

  1. 獲取請求url

  2. 判斷請求url中是否包含login,如果包含,說明是登錄操作,放行

  3. 獲取請求頭中的令牌(token)

  4. 判斷令牌是否存在,如果不存在,返回錯誤結果(未登錄)

  5. 解析token,如果解析失敗,返回錯誤結果(未登錄)

  6. 放行

代碼實現(xiàn)文章來源地址http://www.zghlxwxcb.cn/news/detail-665462.html

@Slf4j
@WebFilter(urlPatterns = "/*") //攔截所有請求
public class LoginCheckFilter implements Filter {



    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)
            throws IOException, ServletException {

        System.out.printf("程序開始");

        //強制轉換為http協(xié)議的請求對象、響應對象 (轉換原因:要使用子類中特有方法)
        HttpServletRequest request = (HttpServletRequest) servletRequest;
        HttpServletResponse response = (HttpServletResponse) servletResponse;

       // 1、獲取請求的url
        String url = request.getRequestURI().toString();
        log.info("請求路徑 {}",url);

        // 2、判斷url是否包含login,有的話就放行
        if(url.contains("login")){

            // 放行請求
            filterChain.doFilter(request,response);
            return;
        }

        // 3、獲取請求頭的token
        String token = request.getHeader("token");
        log.info("請求頭的 {}",token);

        // 4、判斷令牌是否存在,不存在,相應錯誤信息
        if(!StringUtils.hasLength(token)){
            log.info("令牌不存在");
            // 相應錯誤信息
            Result error = Result.error("NOT_logion");
            String notLogin = JSONObject.toJSONString(error);
            response.getWriter().write(notLogin);
            return;
        }

        // 5、解析token,如果解析失敗,則返回錯誤的結果
        try{
            JwtUtils.parseJWT(token);

        }catch (Exception e){
            e.printStackTrace();
            // 相應錯誤信息
            Result error = Result.error("NOT_logion");
            String notLogin = JSONObject.toJSONString(error);
            response.getWriter().write(notLogin);
            return;

        }
        // 6、 放行
        log.info("令牌和法,放行");
        filterChain.doFilter(request,response);

    }


}

到了這里,關于登陸接口的的Filter過濾的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • JavaWeb三大組件之一Filter(過濾器)

    JavaWeb三大組件之一Filter(過濾器)

    攔截所有訪問web資源的請求或者響應(servlet、Jsp頁面、HTML頁面),從而實現(xiàn)我們自己的業(yè)務邏輯,這些邏輯可以是實現(xiàn)訪問權限的控制、過濾敏感詞、壓縮響應等功能。 過濾器是\\\"鏈接\\\"在容器的處理過程中的,它會在servlet處理器之前訪問進入的請求,并且在響應信息返回客服

    2024年02月07日
    瀏覽(30)
  • JavaWeb過濾器(Filter)詳解,是時候該把過濾器徹底搞懂了(萬字說明)

    JavaWeb過濾器(Filter)詳解,是時候該把過濾器徹底搞懂了(萬字說明)

    ? ? ? ? 注意:這篇文章很長,學習完后將會解決你對于過濾器(Filter)的所有疑惑,下面將通過理論和代碼的結合來進行講解演示.....? ? 目錄 基本介紹 過濾器原理 過濾器(Filter)接口 使用過濾器(Filter) 創(chuàng)建過濾器(Fliter) 使用過濾器(Filter) 配置過濾器(Filter)攔截路徑? 注解方式

    2024年02月02日
    瀏覽(49)
  • java過濾器(Filter)

    java過濾器(Filter)

    原文鏈接: java過濾器(Filter – 編程屋 目錄 1 過濾器簡介 2 Filter詳細介紹 3 Filter的用法 3.1 用法1 ?3.2 用法2 filter也稱之為過濾器,它是javaWeb三大組件之一(Servlet程序、Listener監(jiān)聽器、Filter過濾器) 作用: 既可以對請求進行攔截,也可以對響應進行處理。 常見場景: 權限檢

    2024年02月20日
    瀏覽(30)
  • [Java]過濾器(Filter)

    [Java]過濾器(Filter)

    一、什么是過濾器 過濾器是Servlet的高級特性之一,是實現(xiàn)Filter接口的Java類! 過濾器的執(zhí)行流程: ? 從上面的圖我們可以發(fā)現(xiàn),當瀏覽器發(fā)送請求給服務器的時候, 先執(zhí)行過濾器,然后才訪問Web的資源。服務器響應Response,從Web資源抵達瀏覽器之前,也會途徑過濾器。 過濾

    2024年02月11日
    瀏覽(20)
  • 【Spring】Springboot過濾器Filter和攔截器Inteceptor詳解及使用場景

    Springboot過濾器Filter和攔截器Inteceptor詳解及使用場景

    2024年02月13日
    瀏覽(35)
  • Java on VS Code 2月更新|JUnit 5 并行測試與 Spring Boot 插件的過濾功能

    Java on VS Code 2月更新|JUnit 5 并行測試與 Spring Boot 插件的過濾功能

    作者:Nick Zhu - Senior Program Manager, Developer Division at Microsoft 排版:Alan Wang 大家好,歡迎來到我們的二月更新!在此博客中,我們將為您帶來與 JUnit 5 并行測試相關的新功能以及用于 Spring Boot Dashboard的過濾功能。 另外,OpenAI 和 ChatGPT 是最近的熱點,所以在 GitHub Copilot 方面也有

    2024年02月13日
    瀏覽(21)
  • Java - Stream Filter 多條件篩選過濾

    Java - Stream Filter 多條件篩選過濾

    Java Stream流中Filter用于通過設置的條件過濾出元素 ,示例如下: 如果需要進行多條件過濾 我們可以對這些參數(shù)進行處理,我們只是需要做一下判斷,即: 讓所有參數(shù)默認為 false,然后對傳進來的值進行取值判斷,若滿足該條件為true,多個條件進行多次判斷 判斷完成之后 會

    2024年02月04日
    瀏覽(22)
  • SpringCloud - Spring Cloud 之 Gateway網(wǎng)關,Route路由,Predicate 謂詞/斷言,F(xiàn)ilter 過濾器(十三)

    SpringCloud - Spring Cloud 之 Gateway網(wǎng)關,Route路由,Predicate 謂詞/斷言,F(xiàn)ilter 過濾器(十三)

    閱讀本文前可先參考 ??????SpringCloud - Spring Cloud根/父項目,開發(fā)準備(二)_MinggeQingchun的博客-CSDN博客 SpringCloud - Spring Cloud 之 Gateway網(wǎng)關(十三)_MinggeQingchun的博客-CSDN博客 Web 有三大組件(監(jiān)聽器 過濾器 servlet),Spring Cloud GateWay 最主要的功能就是路由轉發(fā),而在定義

    2024年02月14日
    瀏覽(29)
  • Java設計模式之過濾器模式(Filter Pattern)

    過濾器模式(Filter Pattern)是一種常用的設計模式,它用于通過一系列條件來過濾對象集合,并將滿足條件的對象保留下來。該模式可以幫助我們在不修改原始對象集合的情況下,根據(jù)特定的條件對集合進行篩選和處理。 在過濾器模式中,通常有三個核心角色: 過濾器接口(

    2024年02月07日
    瀏覽(20)
  • 【Spring Boot 使用Filter統(tǒng)一處理請求數(shù)據(jù)轉換】

    Spring Boot Filter 使用場景 身份驗證和授權 場景描述: 在用戶訪問應用程序的敏感資源之前,需要驗證用戶的身份并授權用戶訪問特定的內(nèi)容。 實現(xiàn)方式: 使用Filter攔截請求,檢查HTTP請求中的身份驗證令牌(如JWT),并確定用戶是否具有執(zhí)行操作的權限。 日志記錄和審計 場景

    2024年02月21日
    瀏覽(37)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包