相关疑难解决方法(0)

记录Java应用程序的所有网络交互

我有一个怪异的Java应用程序(鲜为人知的应用程序服务器GNUEnterprise的客户端)及其源代码,我可以在对其进行一些更改后编译回来.该应用程序大量使用网络,我需要监控每个请求和响应.我可以使用像Wireshark这样的嗅探器,但该应用程序可以通过SSL使用其服务器,因此不知道SSL证书的私钥任何嗅探流量都是无用的.

如何从应用程序本身记录每个请求和响应,我该怎么办?我需要查看所有已发送和已接收的标头.我不想改变负责网络交互的所有代码.我想要的是像一个代码

Network.setDefaultLogger(myCustomLoggerInstance);
Run Code Online (Sandbox Code Playgroud)

在应用程序启动附近的某个地方,然后myCustomLoggerInstance执行我需要的所有日志记录.

此外,鉴于所有网络操作都是用URLConnections进行的,我可以获得响应头con.getHeaderFields()和请求头con.getRequestProperties().但为什么饼干不存在?如何以相同的方式转储发送和接收的cookie?

编辑:我想要达到的目的是模仿RPC应用程序与SSL服务器的通信,比如使用curl.为此,我需要获取应用程序网络流量的详细日志.

java debugging rpc

17
推荐指数
3
解决办法
3万
查看次数

标签 统计

debugging ×1

java ×1

rpc ×1