在通过TCP / SSL套接字

时间:2015-05-06 23:29:10

标签: sockets ssl tcp

我连接了服务器,但我真的不明白TCP如何运作良好以完成任务。我想在开始编写内容之前发送文件名,但是如何从内容中单独读取文件名。这在使用socket.receive(数据包)的UDP中非常简单,但我无法想到使用TCP套接字执行此操作的可比方法。

2 个答案:

答案 0 :(得分:1)

使用固定的字节数写入文件名的长度。然后写下文件名。

在接收方,读取文件名的长度,然后一旦知道长度,就读取文件名。

答案 1 :(得分:1)

根据协议的设计,您有两种选择:

  1. 将文件名长度作为固定大小的整数发送,然后发送实际文件名。接收器然后可以首先读取长度,然后读取它指示读取文件名的许多字节。

    <length><filename><file data>
    
  2. 发送文件名,然后发送一个唯一的分隔符,例如CRLF。接收器可以继续读取,直到遇到分隔符。

    <filename><delimiter><file data>