Java 应用程序无法连接到目标服务器,但浏览器可以

Java 应用程序无法连接到目标服务器,但浏览器可以

我遇到了一个奇怪的连接错误,我的 Java 应用程序在某些 PC 上可以运行,但在其他 PC 上却不行。无法成功建立与某个服务器的 HTTP 连接。Java 遇到了 TimeoutException。

奇怪的是,在无法正常工作的系统上,当我在本地浏览器(Firefox 和 IE)中打开连接时,它可以正常工作。我不仅从身份验证代理获得了响应,还从我的服务器获得了正确的凭据。这是 HTTP 400(错误请求),因为浏览器没有发送预期的 JSON。

本地系统是 Windows Server 2016。Windows 防火墙已关闭。据我所知,本地安装已有多年历史。这里没有配置管理。

Java 应用程序以“NT-Authority/SYSTEM”身份作为服务运行。当我以本地用户(如浏览器)身份运行它时,它的行为相同。我看不出有什么区别。

当我在 TcpView 中检查 TCP 连接时,状态显示为“ESTABLISHED”。这是否意味着握手成功?

我真的真的没有主意了。对于整个系统的每个部分,我可以说那里不可能有错误,因为它在大多数系统中都有效。除了一些。

  • 它不可能是 Java 应用程序,因为相同的代码在几乎所有情况下都有效。
  • 这不可能是服务器配置问题,因为几乎没有客户端受到影响。
  • 它不可能是与身份验证有关的东西,因为只要我从同一本地网络中的另一个本地系统运行具有完全相同配置的 Java 应用程序,相同的凭据就会起作用。身份验证配置是我的 Java 应用程序的唯一配置。
  • 出于同样的原因,它不可能是本地网络配置问题,例如代理之类的问题。

我还怀疑同一系统上运行着其他应用程序或病毒,但它们可能做什么才会表现出这种行为呢?

任何帮助都将受到赞赏。

相关内容