簡體   English   中英

無法在節點js中使用connect-busboy

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM