我在这里得到的一段示例代码有一个奇怪的问题,核心部分是:
server.on('request', function(request, response) {
var file = fs.createWriteStream('copy.csv');
var fileSize = request.headers['content-length'];
var uploadedSize = 0;
request.on('data', function (chunk) {
uploadedSize += chunk.length;
uploadProgress = (uploadedSize/fileSize) * 100;
response.write(Math.round(uploadProgress) + "%" + " uploaded\n" );
var bufferStore = file.write(chunk);
console.log(bufferStore);
console.log(chunk);
if(!bufferStore)
{
request.pause();
}
});
file.on('drain', function() {
request.resume();
});
request.on('end', function() {
response.write('Upload done!');
response.end();
});
});
问题是,copy.csv
该过程完成后文件不包含任何内容。
我试图添加file.end();
-callback request.on('end'
,但它没有成功。但是,如果我在所述回调中添加导致异常的错误代码,则文件编写得很好(尽管这个 ofc 不能成为最终解决方案)。