2017-04-01 31 views
1

嘗試使用connect-multiparty獲取文件詳細信息,但它返回一個空對象。空的對象爲帶有連接多方的上傳文件返回

var express = require('express'), 
    bodyParser = require('body-parser'), 
    app = express(); 
var multiparty = require('connect-multiparty'), 
    multipartyMiddleware = multiparty(); 
app.use(multipartyMiddleware); 


app.post('/testupload1', function(req, res){ 
    var body = req.body;  var file = req.files; 
    console.log(file) // or console.log(body) both empty. 
} 

形式:

<form action="testupload1" method="post" enctype="multipart/form-data"> 

<input type="file" name="file"> <br /> 
<input type="submit" value="Upload"> 

得到一個空對象{}在控制檯當我上傳JPEG文件。我究竟做錯了什麼?請幫忙。

+0

最新的客戶端部分? – akaphenom

+0

@akaphenom編輯了這個問題。請檢查。 – Somename

回答

1

我想這可能會幫助你。

var express = require('express'), 
bodyParser = require('body-parser'), 
app = express(); 
var multiparty = require('connect-multiparty'), 
multipartyMiddleware = multiparty(); 
app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ extended: false })); 


app.post('/testupload1', multipartyMiddleware, function(req, res){ 
var file = req.files; 
console.log(file) 
}); 


    app.get('/file', function (req, res, next) { 
    res.end('<!DOCTYPE html>' 
     + '<html lang="en">' 
     + '<head>' 
     + '<meta charset="UTF-8">' 
     + '<title>Title</title>' 
     + '</head>' 
     + '<body>' 
     + '<form action="testupload1" method="post"  enctype="multipart/form-data">' 
     + '<input type="file" name="file"> <br />' 
     + '<input type="submit" value="Upload">' 
     + '</form>' 
     + '</body>' 
     + '</html>') 
     }); 

    app.listen(3008); 

enter image description here

+0

感謝堆!謝謝。你太棒了!所以我缺少'app.use(bodyParser.urlencoded({extended:false}));'?再次感謝! – Somename

+0

那工作btw :) – Somename