在将响应标头发送到客户端之前查看它们?

时间:2011-03-06 22:54:19

标签: java jsp debian tomcat5.5

我正在为学校写一个项目。我希望能够在网页上显示Web服务器发送给客户端的响应标头。我能够从HttpServletRequest读取请求头,并且能够将响应头写入HttpServletResponse没问题。

有没有办法做到这一点?可以复制服务器即将发送的内容吗?

我正在使用Eclipse Helios使用POJO应用程序开发此JSP,并使用在Debian Lenny上运行的Tomcat 5.5来提供服务。

谢谢,

国际

2 个答案:

答案 0 :(得分:2)

您可以使用FilterHttpServletResponseWrapper

用以下内容覆盖三个addXHeader(..)方法:

void addHeader(String name, String value) {
   super.addHeader(name, value);
   getWriter().write(name + " : " + value);
}

然后,在Filter

chain.doFilter(request, new HeaderHttpServletResponseWrapper(response));

但我会使用Firebug来检查标题。

see this question(第二个答案)

答案 1 :(得分:0)

您可能希望编写一个servlet过滤器,它可以在发送之前拦截请求和响应。