我的计算机上有两个Tomcat服务器,它们之间相互通信。
1)有人可以推荐一个好的(免费)网络嗅探器,这样我就可以监控它们之间发送的请求/响应吗?
2)如何在java代码中检查请求?看看标题和正文是什么以及它们的结构?
非常感谢, 出于某种原因,#2并不像我想象的那样直截了当。
我
答案 0 :(得分:2)
1)Wireshark是“网络嗅探器”。但是如果你在Windows上并希望快速简便地查看http流量,请查看Fiddler.Its是一个IE插件,但可以监控来自你机器的所有http流量。 / p>
2)在servlet或更好的servlet过滤器中添加以下内容。
Enumeration headerNames = request.getHeaderNames();
while(headerNames.hasMoreElements()) {
String headerName = (String)headerNames.nextElement();
out.println("<TR><TD>" + headerName);
out.println(" <TD>" + request.getHeader(headerName));
}
答案 1 :(得分:1)
我喜欢Wireshark。
如果您使用的是Windows,则无法直接监控127.0.0.1环回。您需要设置备用环回适配器(在另一个地址上具有相同的功能)。这在Wireshark文档中有详细说明:
http://wiki.wireshark.org/CaptureSetup/Loopback
我不确定你的第二个问题是什么意思,你能详细介绍一下吗?
如果您的所有请求都是基于HTTP的,那么Wireshark将能够显示标题和正文数据,但它不在Java代码的上下文中。
答案 2 :(得分:0)
如何设置Tomcat服务器以进行2号远程调试?添加断点以便检查对象? http://wiki.apache.org/tomcat/FAQ/Developing
答案 3 :(得分:0)