강좌 & 팁
글 수 2,412
2014.09.01 13:14:04 (*.134.169.166)
44403
많은 분들이 구글 메일을 사용하고 있습니다.
저희 회사도 내부적으로 구글 메일을 사용하고 있죠..
그래서 경우에 따라서 메일을 보내는 기능은 웹 프로그램을 작성하거나 할 때
많이 필요한 방법입니다.
이 메일을 보내는 방법을 웹으로 처리하는 것이 그렇게 어렵지는 않습니다.
특히 Node.js 로 하면
이미 많은 분들이 열심히(?) 만들어 놓은 것이 있죠.
오늘은 구글 메일로 메일을 보내기 위해서 필요한
nodemailer 란 모듈을 소개 하려고 합니다.
사실 nodemailer 는 구글 메일만을 위한 것이 아닙니다.
메일 처리를 아주 손쉽게 할 수 있도록 해주는 막강한 놈입니다.
이 모듈은 다음 사이트에서 관리 되고 있습니다.
https://github.com/andris9/Nodemailer
nodemailer 를 사용하려면 다음과 같이 설치 하면 됩니다.
$ npm install nodemailer
그런데 nodemailer 의 사용법이 이전 0.7 버전과 1.0 버전은 다릅니다.
여기서는 1.0 버전을 사용하는 방법을 알려 드릴 겁니다.
자세한 설명은 안하고 그냥 샘플 소스 하나로 설명해 드리려 합니다.
그만큼 쉽다는 이야기 입니다. ^^
이 샘플은 저희 2014년 세미나를 메일로 보내는 것을 예로 설명하겠습니다.
메일을 받으시는 분들에게 HTML 태그가 포함된 메일을 보내는 방법이죠..
----[test_gmail_send.js]------------------------------------------------------------------
var 메일_보내기_모듈 = require("nodemailer")
console.log( '메일 보내기 시험 프로그램!' );
var 송신자_메일_주소 = "아무개 < xxx@xxx.com >";
var 수신자_메일_주소 = "아무개 < xxx@xxx.com >";
var 메일_제목 = '이것은 시험용 메일 입니다.';
var 메일_내용_HTML_형식= '';
메일_내용_HTML_형식+= '<p> 이것은 시험용 메일입니다.</p>';
메일_내용_HTML_형식+= '<div>';
메일_내용_HTML_형식+= '<img src="http://www.falinux.com/img/kr/seminar/seminar20140627/mail_20140612/seminar_140612_01.jpg" width="800" height="1859" alt=""></img>';
메일_내용_HTML_형식+= '<a href="http://www.falinux.com"><img src="http://www.falinux.com/img/kr/seminar/seminar20140627/mail_20140612/seminar_140612_02.jpg" width="800" height="61" alt="" border="0"></img></a>';
메일_내용_HTML_형식+= '<img src="http://www.falinux.com/img/kr/seminar/seminar20140627/mail_20140612/seminar_140612_03.jpg" width="800" height="743" alt=""></img>';
메일_내용_HTML_형식+= '</div>';
var 접속_환경 = 잘_알려진_사이트_접속_모듈('Gmail');
var gmail_smtp_접속_정보 = { service: 'Gmail', auth: { user: "XXX@XXXX.com", pass: "xxxxxx" } };
var 전송_메일_정보 = {
from : 송신자_메일_주소,
to : 수신자_메일_주소,
subject : 메일_제목,
html : 메일_내용_HTML_형식
};
var 메일_전송_관리자 = 메일_보내기_모듈.createTransport(gmail_smtp_접속_정보 );
메일_전송_관리자.sendMail( 전송_메일_정보, function( 에러, 응답_정보 ){
if(에러){
console.log( '메일 전송 실패 : ' + 에러 );
} else {
console.log( '메일 전송 성공!' );
console.log( 응답_정보 );
}
});
----[test_gmail_send.js]----------------------------------------------------------------
뭐 한글로 작성된 소스이기 때문에 소스를 잘 읽어 보시면 대부분 이해 되실 겁니다.
(그렇게 믿는 거죠 ^^)