簡體   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