当前位置: 首页 > 面试题库 >

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

孙渝
2023-03-14
问题内容

我有一个可怕的Java应用程序(鲜为人知的应用程序服务器GNUEnterprise的客户端)及其源代码,在对其进行了一些更改之后,我可以将其编译回去。该应用程序占用大量网络资源,我需要监视每个请求和响应。我可以使用像Wireshark这样的嗅探器,但是该应用程序可以通过SSL与它的服务器一起工作,因此不知道SSL证书的私钥是否会导致嗅探到的流量毫无用处。

我该怎么做才能使每个请求和响应都从应用程序本身记录下来?我需要查看所有已发送和已接收的标头。我不想更改负责网络交互的所有代码。我想要的是放一个像

Network.setDefaultLogger(myCustomLoggerInstance);

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

而且,由于所有网络操作都是使用URLConnections进行的,因此我可以使用来获得响应标头,con.getHeaderFields()并使用来获得请求标头con.getRequestProperties()。但是为什么不存在cookie?如何以相同方式转储已发送和已接收的Cookie?

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


问题答案:

您不能使用日志代理服务器,例如http://www.charlesproxy.com/或http://fiddler2.com/吗?Charles
Proxy也可以解码AMF请求,Fiddler是SSL拦截的冠军。

在IIRC中,您可以将系统属性http.proxyHost和http.proxyPort设置为127.0.0.1和8888,并且Java
URLConnections将通过您的日志记录代理服务器自动连接,并且您可以很好地了解HTTP流量。

或者,如果打算重播通信,请使用JMeter HTTP代理,该记录以适合重播的格式进行记录。它还具有处理cookie的内置支持。

如果应用程序使用了不错的Web服务,则SoapUI还将具有一个监视代理,该代理将拦截您已为其导入WSDL的Web服务调用。



 类似资料:
  • 应用交付网络 传统计算机网络主要关注的是网络的互连互通,而应用则关注的是业务逻辑功能,如何将两者合在一起,让网络更好的支持应用,同时应用最优化的利用网络,这就是应用交付网络(Application Delivery Networking,ADN)。 应用交付网络围绕着应用和网络主要为企业解决一下几个问题: 安全 - 目前业界已经达成共识,网络安全对于网络应用的保障是至关重要的环 节。而在应用交付网

  • 问题内容: 我有使用nodejs和mongodb的应用程序。我用猫鼬做ODM。现在,我想记录整个应用程序中猫鼬触发的所有查询。 如何记录这些? 问题答案: 您可以像这样启用调试模式: 或添加自己的调试回调: 这会将所有执行的收集方法及其参数记录到控制台。

  • 我还尝试通过注册这个筛选器来全局设置属性: 但这也不会记录所有错误。 如何截获像上面通过调用生成的错误,以便记录它们?看来这个答案应该是显而易见的,但我已经尝试了迄今为止我能想到的一切。 或者,您可以跳过注册,只使用属性装饰单个控制器。

  • 我目前正在尝试制作一个应用程序,允许您登录到您的帐户并查看需要显示的任何数据。 我没有使用 webview,而是为了显示信息,我将从 HTML 中解析数据,然后从那里开始工作,提取我需要显示的数据。我将在下面发布我的应用程序中的代码。 我需要帮助的是弄清楚如何用我的应用程序登录网站。 基本上,步骤应该是这样的: 1.输入用户名 2.输入密码 3.按登录按钮 4.发送用户名 5.如果-网站返回“登录

  • 问题内容: 我只想从Web应用程序中使用PHP发送SMS。谁能告诉我该怎么做?我需要为此做些什么? 问题答案: 我不知道这是否适用于您,但是为了省钱我做了很多次,就是在个人资料中询问用户他的载体是什么,然后尝试与匹配。本质上,许多运营商/大多数运营商都将电子邮件地址连接到电话号码,您可以轻松地将短信发送到该号码。例如,如果您拥有ATT,并且电话号码是786-262-8344,则发送至7682628

  • 我的heroku服务器有这个问题 at=错误代码=H14 desc="没有运行Web进程" 我试图逃跑 heroku ps:scale web=1 但收到这个错误 扩展web进程。。。失败!没有像web这样的类型 Heroku ps: restart web.1--app dashboardaudi88重启web.1进程...完成 这是heroku的日志