在我的应用程序中,我创建了一个套接字来在客户端和服务器之间进行通信。传递的消息有两种类型,它们在数据长度方面有所不同。一种消息类型只有一个字节,而另一种消息具有可变长度。我试图使用单个TCP连接来处理这两种情况,但到目前为止都失败了。有人可以告诉我这是什么理想的方法。使用具有不同端口号的两个连接是最好的方法吗? 请注意,由于外部约束,我的项目中无法使用socket.io。
这里的阅读代码我使用:
Socket socket = new Socket( dstAddress, dstPort );
InputStream inputStream = socket.getInputStream();
try( ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream( 1024 ) )
{
byte[] buffer = new byte[1024];
int bytesRead;
while( ( bytesRead = inputStream.read( buffer ) ) != -1 )
{
byteArrayOutputStream.write( buffer, 0, bytesRead );
}
}
catch( Exception e )
{
e.printStackTrace();
}
由于
答案 0 :(得分:1)
你需要设计自己的通信协议,例如http,但当然要简单得多。并在两侧实现解码器/编码器