我有一个奇怪的错误。我正在使用Firebase的云功能进行某些数据处理。在该功能内,我需要(a)将CSV写入磁盘上的tmp /文件夹,(b)将此文件上传到Google云存储。
我正在使用fs.writeFile写入磁盘。这可以正常工作-数据已正确写入tmp文件夹。但是,如果没有立即解决,整个功能就会崩溃。因此,如果功能上有下一步(例如,等待上载完成与Google云存储的连接),则该功能会崩溃。
我已经能够使用以下简单版本复制该错误:
async.waterfall([
function (callback) {
fs.writeFile("tmp/testfile.txt", "hello world", function(err) {
callback(null);
});
},
function (callback) {
setTimeout(function(){
callback(null)
}, 10000);
}
], function(err){console.log("done!"})
任何关于可能出问题的想法将不胜感激!
答案 0 :(得分:2)
对于后代,问题在于我将tmp文件夹设置为简单的“ tmp”。原来,您需要使用os.tmpdir()查找temp文件夹。一旦这样做,它就可以正常工作。