[英]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.