[英]nodeJS returns Type Error when creating a file using fs writeFile
[英]Error with NodeJS FS (writeFile)
這是我的路由器中負責管理我的上傳的部分:
fs.readFile(files.photo.path, function (err, data) {
// Here is the futur name of my file (ex: SERVER_PATH/images/moka/moka22/11/2016_1.jpg)
var newPath = __dirname + "/images/moka/moka" + new Date().toLocaleDateString() + "_" + Math.floor(Math.random() * 10) + 1 + "." + ext;
fs.writeFile(newPath, data, function (err) {
if(err) {
res.render('error', { error: err, message: "Erreur lors de l'upload"});
} else {
// insctructions
});
}
});
});
當代碼被觸發時,我有這個錯誤:
Error: ENOENT: no such file or directory, open 'D:\projects\raspberry\routes\images\moka\moka2016-11-22_91.jpg'
at Error (native)
如果我很了解fs doc( https://nodejs.org/api/fs.html#fs_fs_writefile_file_data_options_callback ):
fs.writeFile(theNameOfTheFuturFile, theDataToPutIn, callback);
所以我有點困惑。
對不起,我的英語,可能不好,我希望你猜我的意思是:)
謝謝。
問題可能是您正在寫入的目錄不存在。
因此請確保它存在:
fs.readFile(files.photo.path, function (err, data) {
var dirPath = __dirname + "/images/moka/moka";
if (!fs.existsSync(dirPath)){
fs.mkdirSync(dirPath);
}
...
或手工完成。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.