Multer是一个流行的Node.js中间件,用于处理文件上传。它可以帮助我们在服务器端接收和处理上传的文件。要上传两个不同目录下的文件,可以按照以下步骤进行操作:
npm install multer
const multer = require('multer');
multer.diskStorage
方法创建存储引擎:const storage1 = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, 'path/to/destination1');
},
filename: function (req, file, cb) {
cb(null, file.originalname);
}
});
const storage2 = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, 'path/to/destination2');
},
filename: function (req, file, cb) {
cb(null, file.originalname);
}
});
在上述代码中,destination
函数指定了文件的存储路径,filename
函数定义了文件的命名规则。你需要根据实际情况修改路径。
const upload1 = multer({ storage: storage1 });
const upload2 = multer({ storage: storage2 });
upload1.single
或upload2.single
方法来处理单个文件上传,也可以使用upload1.array
或upload2.array
方法来处理多个文件上传。app.post('/upload1', upload1.single('file'), function (req, res) {
// 文件上传成功后的处理逻辑
});
app.post('/upload2', upload2.single('file'), function (req, res) {
// 文件上传成功后的处理逻辑
});
在上述代码中,upload1.single
和upload2.single
方法分别用于处理单个文件上传,upload1.array
和upload2.array
方法用于处理多个文件上传。'file'
参数是上传文件字段的名称,你需要根据实际情况修改。
这样,当客户端向/upload1
或/upload2
发送POST请求时,Multer将会根据配置将文件保存到指定的目录中。
需要注意的是,上述代码中的路径和文件命名规则仅供参考,你需要根据实际需求进行修改。另外,还可以通过Multer的其他配置选项来进一步定制文件上传的行为,例如限制文件大小、文件类型等。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云