java - 限制某些方法的有效负载 CommonsRequestLoggingFilter Spring

标签 java spring filter log4j payload

我正在使用 CommonsRequestLoggingFilter 来记录传入请求的负载。但是对于一种方法,我不想记录有效负载,因为它包含用户 secret 数据。我在 web.xml

中有以下配置
<filter>
    <filter-name>LogFilter</filter-name>
    <filter-class>org.springframework.web.filter.CommonsRequestLoggingFilter</filter-class>
    <init-param>
        <param-name>includePayload</param-name>
        <param-value >true</param-value>
     </init-param>  
    <init-param>
        <param-name>includeQueryString</param-name>
        <param-value>true</param-value>
    </init-param>
      <init-param>
        <param-name>MaxPayloadLength</param-name>
        <param-value>10000</param-value>
    </init-param>
</filter>

帮我用一种方法限制。

提前致谢

最佳答案

您可以创建自己的扩展 CommonsRequestLoggingFilter 的类,在该类中您可以:-

@Override     
protected String createMessage(HttpServletRequest request, String prefix, String suffix) {
      //based on uri you could print payload or not.
}

关于java - 限制某些方法的有效负载 CommonsRequestLoggingFilter Spring,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44541940/

相关文章:

java - RxJava 中的 Zip 运算符不适用于 Retrofit

spring - Grails Spring Security UI请求映射配置

java - Servlet spring-servlet 不可用(Spring+BlazeDS 集成)

java - Spring Security 4 和 REST 的问题,不显示 HTML 文件

python - pandas 数据框中过滤列表时出错

javascript - 更改 w3 示例表过滤器以搜索多列

java线程在创建外部对象之前访问它

java - 未在 java 中检索到来自 sql 表的第一个条目

Java 类构造函数 this.id = id 或 this.setId(id)

java - DWR + Spring - 多个ajax过滤器不起作用