gpt4 book ai didi

angularjs - 不带扩展名的 multer 文件

转载 作者:太空宇宙 更新时间:2023-11-04 02:10:58 24 4
gpt4 key购买 nike

目前我有这个:

  var multipart = require('connect-multiparty');
var multipartMiddleware = multipart();

router.post('/registo',upload.single('file'), function (req, res) {

但是传递的文件的文件扩展名未保存,并且 multer 给它一个随机名称,所以我看到类似这样的内容来纠正该问题:

var storage = multer.diskStorage({
destination: function (req, file, cb) {
cb(null, './uploads/')
},
filename: function (req, file, cb) {
crypto.pseudoRandomBytes(16, function (err, raw) {
cb(null, raw.toString('hex') + Date.now() + '.' + mime.extension(file.mimetype));
});
}
});

var upload = multer({ storage: storage });



router.post('/registo',upload, function (req, res) {

但是我收到一个错误:连接被拒绝,我不知道为什么会发生这种情况

最佳答案

如何使用 multer 上传文件。 Node 代码

var multer = require('multer');
var fs = require('fs');
var Grid = require('gridfs-stream');
var router = express.Router();
var upload = multer({dest: 'uploads/'});


mongoose.createConnection('mongodb://127.0.0.1/obi');
router.post('/upload', upload.any(), function (req, res) {
var conn = mongoose.connection;
var Grid = require('gridfs-stream');
Grid.mongo = mongoose.mongo;
var path = req.files[0].path
var path_name = req.files[0].originalname
var gfs = Grid(conn.db);
var writestream = gfs.createWriteStream({
filename: path_name
});
fs.createReadStream(path).pipe(writestream);
writestream.on('close', function (file) {
res.json(file.filename + 'Written To DB');
fs.unlink(req.files[0].path, function () {
res.json({id: file._id, message: "success"});
});
});
})

希望这对您有用。

关于angularjs - 不带扩展名的 multer 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42143075/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com