java - 读取响应 X-XSS-protection 响应 header 中 header 的值

标签 java httpresponse

我正在实现一个过滤器来设置

httpServletResponse.setHeader("X-XSS-Protection", "1; mode=block");

我已经编写了过滤器。我想检查它是否工作正常。

我想从响应对象中读取 header 。但我不知道该怎么做。

谁能告诉我怎么做吗?

或者如果有更好的方法,请告诉我。

编辑

更新代码

public void doFilter(final ServletRequest req, final ServletResponse res, final FilterChain filterChain)
            throws IOException, ServletException 
            {   

        final HttpServletResponse response = (HttpServletResponse) res;
        final HttpServletRequest request = (HttpServletRequest) req;

        //set  X-XSS-protection in http header, other http headers can be added in same way
        String value = enable ? "1" : "0";  

        if(block) 
        {
            value += "; mode=block";
        }    

        PrintWriter out = response.getWriter();
        out.println("ready to set xss");
        response.setHeader("X-XSS-protection", value);
        out.println("<br/><br/>Xss has been set");          
        filterChain.doFilter(req, res);
        out.println("<br/><br/>XSS"+request.getHeader("X-XSS-protection"));     

        out.println("<br/><br/>job done");
    }

我收到“XSSnull”

请帮我解决这个问题。

提前致谢。

最佳答案

您可以像这样获取并阅读响应阅读器

request.getHeader("name of the header");

我猜在你的情况下你的目标是这样的

request.getHeader("X-XSS-Protection");

编辑

为了更清楚地说明,您可以考虑请求和响应的一些类比。

  • 请求 - 您要发送的内容。

  • 回复 - 您收到的内容

有关请求和响应的更多信息请参阅 this指南,它将包含您需要的有关请求和响应 header 的所有信息。具体转到“处理 Http 响应 header ”

关于java - 读取响应 X-XSS-protection 响应 header 中 header 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14050392/

相关文章:

python - 如何将 python 脚本中的字典 POST 到 django url?

Java 聚类库

java - 将日期对象转换为 Oracle 时间戳类型字符串

Java 不加载嵌入图像

java - HttpServletResponse.getOutputStream.print(string) 与 getWriter(String) 的性能和大小限制

python - 在python中将超时设置为http响应读取方法

java - 如何安装 play2War 插件 (Play Framework 2.1.1.)

java - 什么会导致 Apache Felix 不调用 @Activate 方法?

SSL 慢。建立安全连接花费的时间太长

java - Android登录与字符串响应