我有1个问题。不要理解它是如何工作的。
我希望在fs.createWriteStream
内创建文件,因此只能使用相对路径。所有文件夹都已创建
let p = path.resolve(`../uploads/${data.id}/${file.originalname}`).toString()
outStream = fs.createWriteStream(`./uploads/example.txt`,{flags:'w'}) //work
outStream = fs.createWriteStream(`${__dirname}/uploads/2/example.txt`,{flags:'w'}) //not work
outStream = fs.createWriteStream(p,{flags:'w'}) //not work

ENOENT:没有这样的文件或目录,打开' /Users/arsenkarapetan/Documents/sedalina/server/uploads/2/example.txt'
它是如何正确的?也许我没有得到许可?
答案 0 :(得分:2)
目录/Users/arsenkarapetan/Documents/sedalina/server/uploads/2/
需要存在才能在其中创建文件,我认为在您的情况下它可能尚不存在。
您可以使用mkdirp
之类的模块在创建文件流之前首先创建所有中间目录。