我有这样的穆特中间件:
const multer = require('multer');
const path = require('path');
const storage = multer.diskStorage({
filename: function (req, file, cb) {
cb(null, Date.now() + path.extname(file.originalname))
}
});
const upload = multer({ storage: storage });
module.exports = upload;我没有使用目的属性,因为我在开发中使用了cloudinary,但是我的PM问我是否可以使用我们自己的文件服务器。
我的想法是做这样的事:
const multer = require('multer');
const path = require('path');
const storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, 'http://fileserver/catalog')
},
filename: function (req, file, cb) {
cb(null, Date.now() + path.extname(file.originalname))
}
});
const upload = multer({ storage: storage });
module.exports = upload;但它试图像普通路径一样打开(C:/User/User/.)这种方法是允许的,还是可能的?如果是的话,我怎样才能完成我的目标呢?
发布于 2022-07-19 20:14:52
我认为您可以使用multer和FTP来解决您的问题,使用外部服务器,您可以通过ftp传递
var multer = require('multer')
var FTPStorage = require('multer-ftp')
var upload = multer({
storage: new FTPStorage({
basepath: '/remote/path',
ftp: {
host: 'your host',
secure: true, // enables FTPS/FTP with TLS
user: 'user',
password: 'password'
}
})
})别忘了让别人在你的外部服务器上实现ftp服务器。
https://stackoverflow.com/questions/73042443
复制相似问题