如何实现web过滤器

73次阅读
没有评论

共计 1416 个字符,预计需要花费 4 分钟才能阅读完成。

丸趣 TV 小编给大家分享一下如何实现 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 过滤器”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注丸趣 TV 行业资讯频道!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-25发表,共计1416字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)