8.2.1 什么是过滤器 过滤器(Filter)是Web服务器上的组件,它拦截客户对某个资源的请求和响应,对其进行过滤。图8-3说明了过滤器的一般概念,其中F1是一个过滤器。它显示了请求经过滤器F1到达Servlet,Servlet产生响应再经过滤器F1到达客户。这样,过滤器就可以在请求和响应到达目的地之前对它们进行监视。 8.2.1 什么是过滤器 可以在客户和资源之间建立多个过滤器,从而形成过滤器链(filter chain)。在过滤器链中每个过滤器都对请求处理,然后将请求发送给链中的下一个过滤器(如果它是链中的最后一个,将发送给实际的资源)。类似地,在响应到达客户之前,每个过滤器以相反的顺序对响应处理。图8-4说明了这个过程。 这里,请求是按下列顺序 处理的:过滤器F1、过滤 器F2、过滤器F3,而响应 的处理顺序是过滤器F3、 过滤器F2、过滤器F1。 1. 过滤器是如何工作的 当容器接收到对某个资源的请求时,它首先检查是否有过滤器与该资源关联。如果有过滤器与该资源关联,容器先把该请求发送给过滤器,而不是直接发送给资源。在过滤器处理完请求后,它将做下面三件事: (1)将请求发送到目标资源。 (2)如果有过滤器链,它将把请求(修改过或没有修改过)发送给下一个过滤器。 (3)直接产生响应并将其返回给客户。 当请求返回到客户时,它将以相
原创力文档

文档评论(0)