title: I'm totally faint in using multer-s3 to upload image to aws s3 bucket
body: <p>what does "upload.array('photos', 3) " in the following code denotes ....</p>
  
  <p>My html code. (code reduced for brevity)</p>
  
  <pre><code> &lt;form action="/upload" method="POST"&gt;
   &lt;input type="file" name="pic" id="pic" accept="image/*"&gt;
   &lt;input type="submit"&gt;
   &lt;/form&gt;
  </code></pre>
  
  <p>my expressjs code</p>
  
  <pre><code>AWS.config.update({
    accessKeyId: "xxxxxxxxxxxxx",
    secretAccessKey: "yyyyyyyyyy", 
    "region": "zzzzzzzzz" ,
    signatureVersion: 'v4'
  });
  
  var s3=new AWS.S3();
  
  var upload = multer({
    storage: multerS3({
      s3: s3,
      bucket: 'imgcontainer',
      metadata: function (req, file, cb) {
        cb(null, {fieldName: file.fieldname});
      },
      key: function (req, file, cb) {
        cb(null, Date.now().toString())
      }
    })
  })
  
  app.post('/upload', upload.array('photos', 3), function(req, res, next) {
    res.send('Successfully uploaded ' + req.files.length + ' files!')
  })
  </code></pre>
  
  <p>output:</p>
  
  <pre><code> Cannot read property 'length' of undefined
  </code></pre>