繁体   English   中英

从同一TCP连接发送ByteArray和Bytes

[英]Sending ByteArrays and Bytes from the same TCP connection

在我的应用程序中,我将创建一个套接字以在客户端和服务器之间进行通信。 有两种类型的消息传递,它们在数据长度方面有所不同。 一种消息类型只有一个字节,而另一种则具有可变长度。 我试图使用单个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();
        }

谢谢

您需要设计自己的通信协议,例如http,但是当然要简单得多。 并在两侧实现解码器/编码器

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM