gpt4 book ai didi

web-services - 监控 HTTP 请求和响应(无网络浏览器)

转载 作者:行者123 更新时间:2023-11-28 23:45:46 24 4
gpt4 key购买 nike

我正在创建网络服务以使 Android 应用程序与服务器通信。我在服务器上使用 Tomcat,在传输期间使用 JAX RS 库在 Java 对象和 JSON 之间转换数据。我想要的是能够查看框架正在创建的实际 HTTP 请求和响应。

Web 浏览器(如带有 Firebug 的 Firefox)无法执行,因为我还需要检查 Android 应用程序生成的请求主体。

使用 Servlet API,我可以使用过滤器拦截和获取请求数据,但在框架写入响应后(我相信)不能。

Wireshark 可能是一个解决方案(我现在正在尝试),但似乎有点过头了。我需要担心正确过滤我的消息,但还没有弄清楚如何正确格式化我的 HTTP 消息(没有六边形内容的纯文本)。

我想知道是否有更简单的方法可以从我的应用程序内部或从 tomcat 执行此操作。

最佳答案

试试 Tomcat 的 AccessLogValve .您可以将其配置为记录传入请求 header 以及传出响应 header 。这是一个例子:

    <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_headers_access_log." suffix=".txt"
pattern="%t &quot;%r&quot; %s ||| %{Content-Length}o ||| %{User-Agent}i" />

注意 %{xxx}o 模式 - 这是用于响应 header 。您可能希望将其用作 %{X-JSON}o。还要注意 %{xxx}i 模式 - 用于请求 header 。

嵌套<Valve/> <Context/> 中的元素, <Host/><Engine/>元素,一切就绪。

关于web-services - 监控 HTTP 请求和响应(无网络浏览器),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14629906/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com