2017-07-26 50 views
0

我得到這個錯誤,我不知道爲什麼它給了我這個錯誤,我已經檢查了所有與此相關的教程/類似問題,沒有任何工作。有人能幫助我指出正確的方向嗎?錯誤:意外的字段Amazon S3,Express,Multer,MulterS3

謝謝

錯誤:

意外現場

錯誤:意外現場
在makeError(C:\用戶\管理員\桌面\表達-CC主\ node_modules (C:\ Users \ Administrator \ Desktop \ express-cc-master \ node_modules \ multer \ index.js:40:19)

在wrappedFileFilter上執行下面的命令:multer \ lib \ make-error.js:12:13)

Profile.js

var aws = require('aws-sdk') 
 
var express = require('express'); 
 
var router = express.Router(); 
 
var multer = require('multer') 
 
var multerS3 = require('multer-s3') 
 

 
    
 
aws.config.loadFromPath('./config.json'); 
 
aws.config.update({ 
 
    signatureVersion: 'v4' 
 
}); 
 
    
 
var s3 = new aws.S3({}); 
 

 
var upload = multer({ 
 
    storage: multerS3({ 
 
    s3: s3, 
 
    bucket: 'raytestbucket123', 
 
    acl: 'public-read', 
 
    metadata: function (req, file, cb) { 
 
     cb(null, {fieldName: file.fieldname}); 
 
    }, 
 
    key: function (req, file, cb) { 
 
     cb(null, Date.now()+file.originalname) 
 
    } 
 
    }) 
 
}) 
 

 
router.get('/profile', function(req, res){ 
 
    res.render('profile', { title: 'Profile' }); 
 

 
}); 
 

 

 
router.post('/profile', upload.single('file'), function(req, res, next){ 
 

 
    res.send(req.files); 
 
    console.log(req.files); 
 

 
}) 
 

 

 
module.exports = router;

Profile.hbs

{{> header }} 
 

 

 

 
    <body> 
 
    <form action="/profile" method="POST" enctype="multipart/form-data"> 
 
     File to upload to S3: 
 
     <input name="file" type="file"> 
 
     <br> 
 
     <input type="submit" value="Upload File to S3"> 
 
    </form> 
 
    </body> 
 

 
<div class="container"> 
 
<h2>Profile</h2> 
 
</div>

回答

0

我找到了問題我自己。

而不是

res.send(req.files); console.log(req.files);

它應該是

res.send(req.file); console.log(req.file);