Я хочу использовать connect-multiparty
в моих маршрутах. Я нашел только что-то вроде ниже...
var multipart = require('connect-multiparty');
var multipartMiddleware = multipart();
app.post('/upload', multipartMiddleware, function(req, resp) {
console.log(req.body, req.files);
// don't forget to delete all req.files when done
});
Но моя структура маршрутов, как ниже...
app.route('/tasks')
.get(todoList.list_all_tasks)
.post(todoList.create_a_task);
Поэтому я пробовал использовать этот .post(todoList.create_a_task, multipartMiddleware)
но он был пуст в req.body
. Как я могу правильно передать connect-multiparty
в моем маршруте для запроса множественных тел?
Если вы хотите установить промежуточное ПО для всех запросов, используя этот шаблон; то вы должны использовать:
app.route('/tasks')
.all(multipartMiddleware)
.get(todoList.list_all_tasks)
.post(todoList.create_a_task);
И если вы хотите просто установить его для обработки запросов на почту, то следующее должно работать:
app.route('/tasks')
.get(todoList.list_all_tasks)
.post(multipartMiddleware, todoList.create_a_task);
См.: app.route()
Также express.Router - гораздо более модульный способ обработки маршрутов.