0
我有一臺使用express
的節點服務器。如果我沒有上傳文件,如何獲得npm的multer請求的正文?
我原來使用body-parser
,但是不允許上傳文件。所以,我切換到multer
(與express
最容易集成)。然而,爲了得到任何的req
(特別req.body
),這是我的代碼:
var multer = require('multer');
var upload = multer({ dest : 'uploads/' });
server.all('/example', function (req, res, next) {
var up = upload.single('photo')
up(req, res, function(err) {
console.log(req.body); // i can finally access req.body
});
}
的問題,這一點,是不是所有的我的路線需要上傳的文件。我是否需要浪費CPU爲每條路線撥打upload.single()
才能進入機體? upload.single('')
最終沒有上傳任何文件,但它仍然花在主線程上的寶貴時間。
看起來,upload.single()
等待回調,所以它可能沒有我做的那麼大,但我不喜歡在不需要時調用函數。
有沒有辦法打電話給upload.single()
,還是我只是做了比這更大的交易呢?
謝謝,我不知道'.fields()'。我也做了一些不可思議的事情(不太清楚是什麼),這使得我不能訪問'req',如果我在路由調用中調用'upload.xxx()',所以我在回調中有了額外的邏輯。 – Matt