如何过滤带有特定参数的请求:例如,仅过滤带有“csrf-token”参数名称的请求。过滤器将首先检查请求是否具有所需的参数名称,并绕过那些没有所需参数的请求。
下面是我设置web.xml文件的方法,但问题是所有请求都被过滤了:
<filter>
<filter-name>CSRFTest</filter-name>
<filter-class>org.example.CSRFFilter</filter-class>
<init-param>
<param-name>csrf_token</param-name>
<param-value>csrf</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CSRFTest</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>CrossSiteScriptStripper</filter-name>
<filter-class>CrossSiteScriptStripperFilter</filter-class>
</filter>
<!-- Apply the CrossSiteScriptStripper filter to all servlets and JSP pages. -->
<filter-mapping>
<filter-name>CrossSiteScriptStripper</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
pb2q 给出的答案正在我的TEST PROJECT上工作,但在我的真实项目中插入时出现错误。我想问是否可以使用2个过滤器?