0

我目前在使用 Java 服务器时遇到问题。

这是一个发送图像的简单 TCP 服务器。问题是,我没有客户端程序的代码......此外,似乎没有办法检查客户端套接字是否写入事件,也没有办法检查已经发送到客户端的数据量。

有人知道什么会阻止客户正确获取图像吗?

这是我的代码:

byte[] response = process ( cmd );

if ( response == null )
{
    controlSock.close();
    dataSock.close();
    stop = true;
}
else if ( dataSock != null )
{
   dos.write( response );
   dos.flush();
}

顺便说一句,服务器在 Telnet 上运行良好。

4

1 回答 1

2

如果服务器可以正常使用 telnet,那么您的服务器就可以了。

问题更有可能在于客户所做的假设与您的假设不同。例如,客户端可能假设您首先以大端或小端格式(作为 int、short 或 long)发送大小,也许它也希望以某种格式发送文件/图像的名称。

确定这一点的唯一方法是阅读客户的代码或询问知道客户做出什么假设的人。

于 2012-12-13T10:41:39.430 回答