TIL
D-63 AWS S3 버킷 생성 - 삽질의 시작
홍차23
2019. 12. 5. 21:17
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;