我想在我的路线上使用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以满足多部分的身体请求?
发布于 2018-07-17 04:51:32
如果您希望使用此模式为所有请求安装一个中间件,那么您应该使用:
app.route('/tasks')
.all(multipartMiddleware)
.get(todoList.list_all_tasks)
.post(todoList.create_a_task);而且,如果您只想挂载它来处理post请求,那么下面的操作应该是有效的:
app.route('/tasks')
.get(todoList.list_all_tasks)
.post(multipartMiddleware, todoList.create_a_task);请参阅:app.route()
此外,express.Router是处理路由的一种更加模块化的方法。
https://stackoverflow.com/questions/51372790
复制相似问题