-
Multer - s3Project using node.js/Cloning Youtube 2020. 9. 7. 10:33
AWS 세팅은 끝났다. 이제는 multer를 multerS3로 바꿔서 user가 파일을 업로드 할 때 aws로 업로드될 수 있도록 수정하면 된다.
설치
#npm install aws-sdk multer-s3
middlewares.js
new aws.S3()에 IAM을 통해서 얻은 AWS key 값들을 넣고 s3 를 생성한다. multerS3는 s3가 필요하다.
userController.js
profile을 edit할 때 avatar를 전송받는다. 이 때, multer는 file.path로 받았다. 하지만 multer-s3는 file.location으로 받는다. 그러므로 다른 controller에서도 file.path를 모두 file.location으로 바꿔야 한다.
videoDetail.pug
videoDetail의 변경 부분을 보면 if 문이 사라졌다. 모든 video와 avatar는 이제 aws에 업로드가 될 것이므로 파일의 주소가 http인지 아닌지 고려할 필요가 없다. 왜냐하면 모두 http로 시작하기 때문이다.
참고 자료
소스 코드
github.com/zpskek/wetube-v3/commit/74f5ea2a5605a5bc08dcfc3bc378c258539ceb01
'Project using node.js > Cloning Youtube' 카테고리의 다른 글
Delete the avatars on s3 (0) 2020.09.08 Delete the video on s3 (0) 2020.09.08 AWS - S3 & IAM (0) 2020.09.07 flash (0) 2020.09.07 SCSS-comments (0) 2020.09.06