《上傳那些事兒之Nest與Koa》——文件格式怎么了!( 二 )


app.use(body({multipart: true,formidable:{// 上傳存放的路勁uploadDir: path.join(__dirname,'./temp'),// 保持后綴名\keepExtensions: true,onError(err){console.log(err)}}}));2. 使用fs將文件轉存至本地 , 上傳完成后再進行刪除
import * as fs from 'fs';const file = ctx.request.files.file;// 通過originalname獲取文件原名稱const newName = file.originalname;fs.writeFileSync(newName, file.path);const newFile = fs.createReadStream(newName);// 使用newFile進行文件上傳 。。。fs.rmSync(newName);在處理文件名稱的過程中也可以手動的使用uuid來進行名稱的混淆 。有人可能認為 , 為什么寧愿那么麻煩的獲取原來的名稱、再使用uuid重新生成新名稱,也不愿意直接使用內存地址作為文件名稱呢?
很顯然,因為這個流程對于我們來說是可控的 。
NestJSexpress

推薦閱讀