0
但是,我知道TCP不能丟失數據包,因爲它是流式傳輸的。我試圖發送(使用nodejs)一個包含5個「52」數據包的數據流。它的格式應該是(1,52,1,52,1,52,1,52,1,52),其中1是分組的長度。 我在同一臺PC上的C#控制檯應用程序中接收到相同的流,它是什麼服務器。 並在本地網絡中的Java應用程序的Android設備上。TCP流中丟失的數據
C#輸出爲:
「1,52,1,52,1,52,1,52,1,52」
但Java輸出看起來像:
「1,52,1 ,52,52,1,52,1,52"
代碼的NodeJS:
b = new Buffer(1);
b.writeInt8(1,0);
this.sock.write(b);
this.sock.write(String.fromCharCode(event)); //event == 52
Java代碼:
while(true)
{
int a = in.read(); //in is an instance of InputStream
if(a!= -1)Log.v(getTag(),""+a);
}
有沒有人有一個想法是什麼問題?
在此先感謝
/更新: socket.bytesWritten返回10,因此它不在服務器端。
什麼類型的對象是'sock'(來自'this.sock')? –
net.createServer(函數(套接字))與服務器建立連接時收到的套接字對象從 –