Nodemailer는 간단하고 사용하기 쉬운 Node.js 이메일 전송 구성 요소입니다.
1. 노드메일러 설치
npm install nodemailer --save
2. 특징
Nodemailer의 주요 기능은 다음과 같습니다.
위의 기능은 이메일 전송에 필요한 대부분을 다루었습니다. 다음으로 프로그램 작성을 시작하겠습니다.
3. 간단한 예
이것은 일반 텍스트와 HTML 본문이 포함된 이메일을 보내는 완전한 예입니다.
var nodemailer = require('nodemailer'); // create reusable transporter object using the default SMTP transport var transporter = nodemailer.createTransport('smtps://user%40gmail.com:pass@smtp.gmail.com'); // setup e-mail data with unicode symbols var mailOptions = { from: 'Fred Foo 👥 <foo@blurdybloop.com>', // sender address to: 'bar@blurdybloop.com, baz@blurdybloop.com', // list of receivers subject: 'Hello ✔', // Subject line text: 'Hello world 🐴', // plaintext body html: '<b>Hello world 🐴</b>' // html body }; // send mail with defined transport object transporter.sendMail(mailOptions, function(error, info){ if(error){ return console.log(error); } console.log('Message sent: ' + info.response); });
4. 흔히 발생하는 실수
{ [AuthError: Invalid login - 454 Authentication failed, please open smtp flag first!] name: 'AuthError', data: '454 Authentication failed, please open smtp flag first!', stage: 'auth' }
오류 이유: 해당 계정이 이 서비스를 설정하지 않았습니다
해결 방법: QQ 사서함 -> 설정 -> 서비스 활성화: POP3/SMTP 서비스
{ [SenderError: Mail from command failed - 501 mail from address must be same as authorization user] name: 'SenderError', data: '501 mail from address must be same as authorization user', stage: 'mail' }
오류 원인: 보내는 계정과 인증 계정이 다릅니다. 즉, 사용자 이름과 비밀번호가 일치하지 않습니다.
위 내용은 이 글의 전체 내용입니다. 모든 분들의 공부에 도움이 되었으면 좋겠습니다.