溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何實(shí)現(xiàn)web過濾器

發(fā)布時間:2021-11-17 11:43:50 來源:億速云 閱讀:206 作者:小新 欄目:云計(jì)算

小編給大家分享一下如何實(shí)現(xiàn)web過濾器,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

過濾器
   概述
     從技術(shù)上講,過濾器是一個中間組件,用于攔截源數(shù)據(jù)和目的數(shù)據(jù)之間的消息,并且過濾二者之間傳遞的數(shù)據(jù)。其作用類似于警衛(wèi),阻止不想的信息從一個點(diǎn)傳遞到另一個點(diǎn)
     對于Web應(yīng)用程序,過濾器是駐留在Web服務(wù)器上的Web組件,它可以過濾從客戶端傳遞到服務(wù)器的請求和響應(yīng),當(dāng)Web容器接收到一個對資源的請求,它將判斷是否有過濾器與這個資源相關(guān)聯(lián)。如果有,就交給過濾器,過濾器可以更改請求的內(nèi)容,或者重設(shè)置請求頭,然后再將請求傳遞給目標(biāo)資源。同樣它也可以對服務(wù)器發(fā)出的響應(yīng)進(jìn)行修改。
     從上面的過程可以看出客戶端和目標(biāo)資源來說都是透明的,他們不需要知道過濾器的存在
     在這個過程當(dāng)中還可以設(shè)置多個過濾器,形成一條鏈,來進(jìn)行相應(yīng)的處理
   應(yīng)用:
     1.認(rèn)證過濾:對用戶請求進(jìn)行統(tǒng)一的認(rèn)證
     2.登錄和審核過濾:對用戶的訪問請求進(jìn)行記錄和審核。
     3.圖像轉(zhuǎn)換過濾:轉(zhuǎn)換圖像格式
     4.數(shù)據(jù)壓縮過濾:對用戶發(fā)生的數(shù)據(jù)進(jìn)行壓縮,從而減少傳輸量
     5.加密過濾:對請求和響應(yīng)進(jìn)行加密解密處理
     6.令牌過濾
     7.資源訪問觸發(fā)事件過濾
     8.XSLT過濾
     9.MIME-type過濾
     代碼:
       過濾器必須實(shí)現(xiàn)Filter這個接口
         有三個方法需要實(shí)現(xiàn)
           1.init()-初始化
           2.doFilter()-過濾
           3.destroy()-銷毀
       注意:javax.servlet包中包括
         ServletRequest、ServletResponse、ServletExcption、FilterConfig、Filter、FilterChain
       javax.io包中包括:
         PrinterWriter、IOExcption
       Filter的布署
         它的布署跟servlet的 布署差不多eg:
           <filter>      <filter-name>Hello</filter-name>                <filter-class>com.lovo.HelleWorld</filter-class>         </filter> <filter-mapping>           <filter-name>Hello</filter-name>                   <url-pattern>/filter/*</url-pattern> </filter-mapping>
   過濾器API:
     容器實(shí)現(xiàn)的三個接口:
       1.javax.servlet.Filter
       2.javax.serlvet.Filter.Chain
       3.javax.servlet.FilterConfig-跟servlet中的servletConfig一樣,主要是提供過濾器初始化參數(shù)
     容器實(shí)現(xiàn)的四個包裝類:
       1.javax.servlet.ServletRequestWrapper
       2.javax.servlet.Servletresponsewrapper
       3.javax.servlet.HttpServletRequestWrapper
       4.javax.servlet.HttpServletResponseWrapper

web過濾器可以防止WVS掃描和注入、跨站等***。

以上是“如何實(shí)現(xiàn)web過濾器”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

web
AI