温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何实现web过滤器

发布时间:2021-11-17 11:43:50 来源:亿速云 阅读:208 作者:小新 栏目:云计算

小编给大家分享一下如何实现web过滤器,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

过滤器
   概述
     从技术上讲,过滤器是一个中间组件,用于拦截源数据和目的数据之间的消息,并且过滤二者之间传递的数据。其作用类似于警卫,阻止不想的信息从一个点传递到另一个点
     对于Web应用程序,过滤器是驻留在Web服务器上的Web组件,它可以过滤从客户端传递到服务器的请求和响应,当Web容器接收到一个对资源的请求,它将判断是否有过滤器与这个资源相关联。如果有,就交给过滤器,过滤器可以更改请求的内容,或者重设置请求头,然后再将请求传递给目标资源。同样它也可以对服务器发出的响应进行修改。
     从上面的过程可以看出客户端和目标资源来说都是透明的,他们不需要知道过滤器的存在
     在这个过程当中还可以设置多个过滤器,形成一条链,来进行相应的处理
   应用:
     1.认证过滤:对用户请求进行统一的认证
     2.登录和审核过滤:对用户的访问请求进行记录和审核。
     3.图像转换过滤:转换图像格式
     4.数据压缩过滤:对用户发生的数据进行压缩,从而减少传输量
     5.加密过滤:对请求和响应进行加密解密处理
     6.令牌过滤
     7.资源访问触发事件过滤
     8.XSLT过滤
     9.MIME-type过滤
     代码:
       过滤器必须实现Filter这个接口
         有三个方法需要实现
           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:
     容器实现的三个接口:
       1.javax.servlet.Filter
       2.javax.serlvet.Filter.Chain
       3.javax.servlet.FilterConfig-跟servlet中的servletConfig一样,主要是提供过滤器初始化参数
     容器实现的四个包装类:
       1.javax.servlet.ServletRequestWrapper
       2.javax.servlet.Servletresponsewrapper
       3.javax.servlet.HttpServletRequestWrapper
       4.javax.servlet.HttpServletResponseWrapper

web过滤器可以防止WVS扫描和注入、跨站等***。

以上是“如何实现web过滤器”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

web
AI