스터디코딩

[node.js / s3] multer-s3 사용하기 본문

카테고리 없음

[node.js / s3] multer-s3 사용하기

퓨처디벨로퍼 2022. 2. 17. 23:50

설치

npm install --save multer-s3

 

사용법

 

var aws = require('aws-sdk')
var express = require('express')
var multer = require('multer')
var multerS3 = require('multer-s3')

var app = express()
var s3 = new aws.S3({ /* ... */ })

var upload = multer({
  storage: multerS3({
    s3: s3,
    bucket: 'some-bucket',
    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!')
})

File inforamation

size 파일 크기(바이트)  
bucket 파일을 저장하는 데 사용되는 버킷 S3Storage
key 파일 이름 S3Storage
acl 파일에 대한 액세스 제어 S3Storage
contentType mimetype파일 업로드에 사용 S3Storage
metadata S3 metadata로 보낼 객체 S3Storage
location url파일에 액세스하는 S3 S3Storage
etag etagS3에 업로드된 파일  S3Storage
contentDisposition contentDisposition파일 업로드에 사용 S3Storage
storageClass storageClassS3에 업로드된 파일에 사용 S3Storage
versionId 버전 이 versionId지정된 버킷에 대해 S3에서 반환하는 선택적 매개변수입니다. S3Storage
contentEncoding contentEncoding파일 업로드에 사용 S3Storage

 

참고: https://github.com/anacronw/multer-s3

Comments