반응형
● 순서
- 요지
- 적용 코드
- 마무리
1. 요지
- 업무를 보면서 특정 데이터를 누구(타 부서 직원)에게 전달해야 하는 일이 생겼다
- 단, 이 과정이 매일 반복되고 일정한 시간마다 보내야 되는데, 일일이 데이터를 추출해서 메신저로 보내줬다
- 이에 이러한 불편함을 버리고자 단순하게 메일만 보냈던 이메일 전송 라이브러리에서 파일 첨부가 되는지 알아보았다
2. 라이브러리 설치
https://developerjjh.tistory.com/200
3. 적용 코드
-
- transport의 sendMail 메서드의 옵션인 attachments 값을 설정해주면 된다
// ... 이하 생략 ...
// 보내고자 하는 파일의 값을 가져온다 (buffer형식)
const sendFileData:Buffer = readFileSync(`upload/${파일_이름.확장자}`);
await transporter.sendMail({
from: process.env.NODEMAILER_USER,
to: '보내고자 하는 대상의 이메일 주소', // ~~~@gmail.com, ~~~@naver.com 등등
subject: '이메일 내용',
html: '이메일 제목',
attachments: [
{ filename: '첨부파일의 이름', content: sendFileData },
],
});
// ... 이하 생략 ...
- attachments
- 배열형식으로 첨부하고자 하는 파일의 이름(filename)
- 해당 파일의 buffer값(content)을 설정할 수 있다
- 객체형식으로 여러개도 가능하다
4. 마무리
- 진작에 알아볼껄 ... 그랬다..ㅋㅋㅋㅋ
- 처음에 만들떄는 생각도 안 하고 있다가, 필요하니까 그때 가서야 있나..?라고 찾아보다니
- 앞으로도 알아가야할 것들과 공부할 것들은 정말 많다는 걸 느꼈다
'Node.js' 카테고리의 다른 글
(Node.js) 업로드 이미지 리사이징 (0) | 2024.06.01 |
---|---|
(Node.js) 서버에서 차트 그려서 이미지로 변환 (0) | 2024.02.25 |
(Node.js) node-cron 라이브러리 (0) | 2024.02.23 |
(Node.js) MVC 디자인 패턴 (0) | 2023.09.24 |
(Node.js) SNS_Kakao 간편 가입 및 로그인 구현 (0) | 2023.09.03 |