我尝试使用nodeJS作为客户端向php服务器发送大文件。我在php的服务器方面遇到了问题。该文件在服务器上损坏。
这是nodeJS客户端:
var req = require('request');
var fs = require('fs');
var path = require ('path');
var filename ='datas/test.mp4';
var readable = fs.createReadStream(filename);
var chunk;
var i=1;
readable.on('readable', () => {
while (null !== (chunk = readable.read(1048576))) {
console.log(chunk);
var formData = {
my_buffer: chunk,
index : i,
filename:path.basename(filename),
};
req.post({url:'http://localhost/server.php',formData:formData,headers: headers},(err,response, body)=>{
if (err){
console.log(" an error occured " + err);
}
});
i = i+1;
} });
服务器(server.php):
file_put_contents ($_POST['filename'],$_POST['my_buffer'],FILE_APPEND);
不知何故,该文件在服务器上被破坏一次。无法理解原因。有帮助吗?