Вместо того, чтобы приложить multer
ко всему экспрессу app
, я пытаюсь включить его только для определенных маршрутов, что лучше, поскольку вы будете препятствовать загрузке всех маршрутов post
.Установить свойства multer по экспресс-маршруту
Проблема в том, что я не могу установить ее свойства внутри маршрута.
var router = require('express').Router(),
multer = require('multer');
router.post('/uploads', function (req, res, next) {
multer({
dest: req.app.get('cfg').uploads.dir
});
console.log(req.files); process.exit();
});
Здесь req.files
не определено.
То же самое происходит, если я ставил мультер в отдельное промежуточное ПО и прикреплял его к вышеуказанному маршруту.
function initMulter(req, res, next) {
multer({
dest: req.app.get('cfg').uploads.dir
});
next();
}
router.post('/uploads', initMulter, function (req, res, next) {
console.log(req.files); process.exit();
});
Кроме того, в этом случае req.files
является undefined
.
Есть ли что-то действительно неправильное, что я делаю, или я должен начать обвинять пиво?
Любые идеи, как я должен идти о том, что делать? –
@SwarajGiri Я обновил ответ на примере. –
Это слишком много бьется вокруг куста, чтобы иметь настраиваемый dest. Может стоить того, чтобы дать мультерам парня стучать. –