1

我首先通过 vpn 客户端进行连接,然后我可以进行远程登录,并且当我在终端上粘贴请求字符串时也能够得到响应。

如果我通过 java 程序尝试相同的请求,我没有得到任何响应。

当我尝试通过 java 时,我可以看到使用 netstat 建立了 TCP 连接。TCP 10.2.2.22:1154 184.23.23.61:7565 已建立

这是发送请求的java客户端代码。

        Socket client = new Socket(serverIp, port);
        OutputStream out = client.getOutputStream();
        InputStream in = client.getInputStream();
        String test = "TUE231363**";

        StringBuffer response = new StringBuffer("response : ");
        out.write(test.getBytes());
        out.flush();

        int c;
        System.out.println("waiting for response.......>>>>>>>>>>>>>");

        while ((c = in.read()) != -1) {
            if (isEndOfResponse(c))
                break;
            System.out.print((char) c);
            response.append(c);
        }
        client.close();
        System.out.println(response.toString());

每次几分钟 [5-6 分钟] 后它都会退出而没有任何响应。

我对网络有点陌生,任何人都可以建议我缺少什么。

4

1 回答 1

1

我假设您正在远程登录到您尝试从 Java 连接到的相同 IP 地址和端口。

连接并且您的客户端似乎也连接的事实telnet意味着服务器正在运行,并且它已经在ServerSocket正确的 IP / 主机上创建了一个绑定 a。它甚至可能accept正确调用。但似乎服务器根本没有读取请求,或者无法发送响应。

无论哪种方式,问题很可能出在服务器端......如果没有看到服务器端代码,我们无话可说。

于 2013-05-18T12:22:39.987 回答