没有从服务器获得任何响应,但能够从telnet获得响应

时间:2013-05-18 12:01:12

标签: java networking telnet

我正在通过vpn客户端进行连接,然后我可以执行telnet,并且能够在终端上粘贴请求字符串时获得响应。

如果我正在尝试java程序,请求相同。

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

这是发送请求的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分钟]后,它会退出而没有任何反应。

我对网络有点新意,任何人都可以提出我所缺少的内容。

1 个答案:

答案 0 :(得分:1)

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

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

无论哪种方式,问题最有可能发生在服务器端......如果没有看到服务器端代码,我们就不会说太多了。