将二进制块发送到nodejs。从二进制构建文件

时间:2018-03-14 23:03:55

标签: javascript node.js ajax xmlhttprequest

嗨ppl我坚持这个。我希望能够通过几个XMLHttpRequest发送文件块,并从nodejs接收这些部分并从该二进制文件构建初始文件。

问题是结果文件格式不正确。我猜是因为编码。

在FE上使用file.slice将文件分成几个部分,这看起来非常公平,因为浏览器正在设置Content-Length ..

on Backend Im使用fs.createWriteStream写二进制数据,但可能编码不正确..

repo以及重现问题的说明 - > https://github.com/k1r0s/node-xhr-chunked-upload

提前致谢!

1 个答案:

答案 0 :(得分:0)

错误是因为我正在将缓冲区转换为字符串

https://nodejs.org/en/docs/guides/anatomy-of-an-http-transaction/

我意识到这一点,我只是将所有缓冲区连接成一个缓冲区。

https://github.com/k1r0s/node-xhr-chunked-upload/commit/a724895293bca85c254cfdfec82c3226df5e2945