Multer + S3를 통해 파일 업로드를 NodeJs 환경에서 구현중에 잘 되던게 어느 순간
갑자기 에러가 뜨기 시작했다.
추정되는 원인
const fileContent: Buffer = fs.readFileSync(input.fileData.path);
이 코드에서 fs를 사용해서 path를 읽어들였으나 잘 되던게 undefined 에러가 발생 (처음부터 안됐으면.. 왜 되던게..)
해결법
const fileContent: Buffer = input.fileData.buffer;
Multer에서 File에 대한 buffer를 fs를 사용하지 않고 곧바로 넣어준다.
이렇게 할 경우 S3에 잘 넣어 줄 수 있게 됨.
S3에 파일 업로드하기
const params =
{
Bucket: process.env.BUCKET_NAME,
Key: input.fileData.originalname,
Body: fileContent,
ContentType: input.fileData.mimetype
};
const result = await s3Storage.upload(params).promise();
'NodeJs 관련 참고' 카테고리의 다른 글
Node_module 삭제 후 import 인식 안될 때 (0) | 2024.05.09 |
---|---|
TypeOrm 캐싱으로 인한 문제 (0) | 2024.05.07 |
NodeJs Express + Nginx Client-IP v4버전으로 추출하는법 (0) | 2024.05.06 |