客户端向服务器发送请求(20分)

  • 主题发起人 主题发起人 staroftheeast
  • 开始时间 开始时间
S

staroftheeast

Unregistered / Unconfirmed
GUEST, unregistred user!
现在要实现客户端向服务器发送请求数据包,服务器响应,返回数据包,客户端把它发送过来的数据按照规定的协议进行解包。服务器发送数据的长度不定,我现在用clientsocket编写客户端。请问如何实现“发送--接收--处理”这样的过程,它传过来的数据我是应该先缓存然后存在文件里么?
 
数据传输格式为0x02(1Byte) Len(2Byte) Type(1Byte) Len1(2Byte) Data1 Len2(2Byte) Data2 checksum(1Byte) 0x03(1Byte)
以0x02开头,0x03结尾
len表示从Type到Data2结束的长度
Type的bit7表示这串信息是命令(0)还是数据(1),bit6表示是压缩(0)还是不压缩(1)
len1表示Data1的长度
checksum表示从len到Data2所有数据的XOR
Data1,和Data2的长度不定,而且服务器发来的数据可能还包括Data3 Data4 Data5~~~~~
请问我对这样的数据应该如何解包
并且我得到的数据应该写到文件中么,该如何操作呢,谢谢
 
既然知道数据报的格式,就一个一个字节的解析好了。如果需要保存日志,那就写到文件中。
 
我想请问,客户端和服务器之间交流的数据是直接写到缓存中的么。我想写入文件,如何操作?
 
利用TFileStream,然后将字节流写入TFileStream,利用TFileStream.SaveToFile就可以了。
 
按我上面说得字符创格式,客户端发送的时候要把它转换成16进制么。还是自己写出要发送的字串直接发送请求呢
 
多人接受答案了。
 
后退
顶部