[英]Unable to use connect-busboy in node js
我想在node.js中使用connect-busboy上傳圖像。 使用參考https://www.npmjs.org/package/connect-busboy ,我編寫了代碼:
router.post('/upload', function(req, res) {
req.pipe(req.busboy);
console.log('1')
req.busboy.on('file', function(fieldname, file, filename) {
console.log('2')
var fstream = fs.createWriteStream('../uploads/' + filename);
file.pipe(fstream);
fstream.on('close', function () {
res.redirect('back');
});
});
console.log('4')
});
但是,當我嘗試上傳圖像時,大多數情況下,圖像是在給定路徑中上傳的,但是有時,由於js調用的異步特性,req.busboy.on內部的代碼會被跳過,console.log('4')在console.log('1')之后直接執行。 我不明白為什么會這樣,因為我認為req.busboy.on是使用回調功能實現的,因此每次都應執行代碼。
請在這里幫我嗎?
編輯1:
好的...我的上述問題已解決,但現在,我無法使用req.body獲取表單的其他字段。 它是空的json。 我也嘗試過multer,但無法正常運行。
好吧....那是我的壞事,問題是當我提交空表格時,程序崩潰了。 為此,我需要檢查一下。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.