본문 바로가기
TIL

D-63 AWS S3 버킷 생성 - 삽질의 시작

by 홍차23 2019. 12. 5.

1. aws s3 버킷 생성

 

2. 액세스 로깅 - 액세스 요청에 대한 정보 기록 설정

 

 

3. 퍼블릭으로 권한 설정, 버킷 정책 생성

 

4. 삽질의 시작...그냥 업로드는 되는데 nodeJs 통해서 보냈을 때 access denied 가 나온다. 여러 시도를 하며.. 300개째 에러를 날리고 밤을 새고 수업을 들으러 갔다. 액세스키도 맞고 정책설정도 해줬는데 왜 디나이가 뜨는 것일까. 

 

//index.js
const express = require('express');
const router = express.Router();
const path = require("path");
const multer = require("multer");
const multerS3 = require('multer-s3');
const AWS = require("aws-sdk");
AWS.config.loadFromPath(__dirname + "/../config/awsconfig.json");

let s3 = new AWS.S3();

let upload = multer({
  storage: multerS3({
    s3: s3,
    bucket: "catcherimg",
    key: function (req, file, cb) {
      let extension = path.extname(file.originalname);
      cb(null, Date.now().toString() + extension)
    },
    acl: 'public-read-write',
  })
})


router.post('/upload', upload.single("imgFile"), function(req, res, next){
  let imgFile = req.file;
  res.json(imgFile);
})

router.get('/upload', function(req, res, next) {
  res.render('upload');
});

module.exports = router;

 

댓글