Java 如何修复直接写入HTTP头输出的Findbugs HTTP参数
我有一个类RequestFilter和@Override方法doFilterInternal。当我为响应添加头时,findbugs显示直接写入HTTP头输出的错误HTTP参数。那么我如何解决这个问题呢?谢谢大家Java 如何修复直接写入HTTP头输出的Findbugs HTTP参数,java,spring,findbugs,Java,Spring,Findbugs,我有一个类RequestFilter和@Override方法doFilterInternal。当我为响应添加头时,findbugs显示直接写入HTTP头输出的错误HTTP参数。那么我如何解决这个问题呢?谢谢大家 String rqHd = request.getHeader("Access-Control-Request-Headers"); response.addHeader("Access-Control-Allow-Headers", rqHd); // findbugs err
String rqHd = request.getHeader("Access-Control-Request-Headers");
response.addHeader("Access-Control-Allow-Headers", rqHd); // findbugs error here
我认为这是HRS_请求_参数_TO_HTTP_头错误,您可以这样修复它:
String rqHd = request.getHeader("Access-Control-Request-Headers");
if(rqHd != null){
String rqHeader = URLEncoder.encode(rqHd,StandardCharsets.UTF_8.displayName());
response.addHeader("Access-Control-Allow-Headers", rqHeader);
}
如果您不想设置ETag头,请小心。 ETag看起来像W/“myetagvalue” 将被编码
W%2F%22myetagvalue%22
小心点 错误是什么?
String etagHd = request.getHeader(HttpHeaders.ETAG);
response.addHeader(HttpHeaders.ETAG, URLEncoder.encode(etagHd,StandardCharsets.UTF_8.displayName());