作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
大家好,我的任务是实现与服务器通信的协议(protocol)。我有一个难题,也许足够熟练的人可以启发我。当我连接到服务器时,我必须发送一个字节数组问题是当我使用它时我从服务器断开了 imediatley:
var
buffer : array [0..200] of byte;
begin
ClientSocket1.Socket.SendBuf(buffer[0],length(buffer));
end;
var
buffer : array [0..200] of byte;
mem_ste : TMemoryStream;
begin
mem_ste := TMemoryStream.Create;
mem_ste.Write(buffer[0],length(buffer));
ClientSocket1.Socket.SendStream(mem_ste);
end;
最佳答案
在第一个代码中,您发送了 201 字节的未初始化垃圾,因此服务器将您踢走也就不足为奇了。
在第二个代码中,您将 201 字节的未初始化垃圾写入流中,但随后没有通过套接字发送任何内容,因为当前的 Position
流的属性仍然在流的末尾——没有什么要发送的。 SendStream
从当前流位置开始并读取直到它到达末尾。
关于delphi - TClientSocket : what is the difference between SendBuffer and SendStream?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6667862/
大家好,我的任务是实现与服务器通信的协议(protocol)。我有一个难题,也许足够熟练的人可以启发我。当我连接到服务器时,我必须发送一个字节数组问题是当我使用它时我从服务器断开了 imediatle
添加静态文件夹时 app.use(express.static(__dirname + '/static'));我收到错误错误:Forbiddenat SendStream.error 最佳答案 已知
我是一名优秀的程序员,十分优秀!