首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我无法使用multer-s3上传大文件。它也没有给我任何错误。

我无法使用multer-s3上传大文件。它也没有给我任何错误。
EN

Stack Overflow用户
提问于 2017-12-19 18:48:25
回答 1查看 1.5K关注 0票数 0

我无法使用multer-s3上传大文件。它也没有给我任何错误。它只是不上传文件,甚至没有进入回调,并获得超时。有没有办法把大文件上传到s3 Bucket?

我是这样使用它的:

代码语言:javascript
复制
var uploadSingle = upload.single('uploadFile');

router.post('/uploadVideo',function(req,res,next){  
    uploadSingle(req,res,function(err){
                // doesn't come here if the file is large
            if(err){
                //Error Response , Error while uploading Module PDF;
            }
            else{
                //handling file upload
               // success response
            }
    });
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-22 01:36:24

我也有同样的问题,在研究了this page之后,我发现我需要添加contentLength作为参数之一。其值是以字节为单位的长度。

代码语言:javascript
复制
const s3 = new AWS.S3({
    accessKeyId: process.env.S3_ACCESS_KEY_ID,
    secretAccessKey: process.env.S3_SECRET_ACCESS_KEY
});

var upload = multer({
  storage: multerS3({
    s3: s3,
    bucket: 'myBucket',
    contentType: multerS3.AUTO_CONTENT_TYPE,
    contentLength: 500000000,
    metadata: function (req, file, cb) {
      cb(null, {fieldName: file.fieldname});
    },
    key: function (req, file, cb) {
      cb(null, file.originalname);
    }
  })
});

router.post('/uploadToS3', upload.array('photos', 30), function(req, res, next) {
  res.send({"message": 'Successfully uploaded ' + req.files.length + ' files!'});
})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47885229

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档