сохранить изображение в корзину s3 с форматом изображения - PullRequest
0 голосов
/ 24 февраля 2019

Я пытаюсь загрузить изображение в корзину s3 с помощью multerS3.Он сохраняет файл в корзину s3, но не в формате изображения.вот мой код.

  storage: multerS3({
    s3: S3,
    bucket: 'slsupload',
    acl: 'public-read',
    metadata: function (req, file, cb) {
      cb(null, {fieldName: file.fieldname});
    },
    key: function (req, file, cb) {
      cb(null, Date.now().toString()+".jpg")
    }
  })
});

const singleUpload = upload.single('file');

app.post('/test-upload', (req, res) => {
  singleUpload(req, res, function(err, some) {
    if (err) {
      return res.status(422).send({errors: [{title: 'Image Upload Error', detail: err.message}] });
    }

    return res.json({'imageUrl': req.file.location});
  });
});```

1 Ответ

0 голосов
/ 24 февраля 2019

Вы можете попробовать установить комбинацию contentType buy или позволить multerS3 автоматически обнаружить contentType:

var upload = multer({
  storage: multerS3({
    s3: s3,
    bucket: 'some-bucket',
    contentType: multerS3.AUTO_CONTENT_TYPE,
    key: function (req, file, cb) {
      cb(null, Date.now().toString())
    }
  })
})
...