HTTP服务 接收文件 的问题(接收的文件总是比发送的文件小)
废话不说,直接上代码,求高人指点。 不会用markdown,来个图片吧。 代码里,我知道问题很大: 问题1:如何按发送的顺序组装数据。 问题2:如何确定数据发送完毕。
补充一下,这里只有http,没有页面。
11 回复
小多少呢?我没看出来问题…囧。。 写成这样试试…
var fileData = [];
...
fileData.push(chunk);
...
writeFile(path, Buffer.concat(filaData), function(err) {
});
赞同 @albin3 你的两个问题在代码里面应该都写对了。 主要的问题是,不要使用 + 符号来操作 Buffer,+ 符号只适合 ascii 码的情况。一旦有二进制或者utf-8的字符,就容易导致数据截断。