많은 분들이 구글 메일을 사용하고 있습니다. 

저희 회사도 내부적으로 구글 메일을 사용하고 있죠..

그래서 경우에 따라서 메일을 보내는 기능은 웹 프로그램을 작성하거나 할 때

많이 필요한 방법입니다. 

이 메일을 보내는 방법을 웹으로 처리하는 것이 그렇게 어렵지는 않습니다. 

특히 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]---------------------------------------------------------------- 

뭐 한글로 작성된 소스이기 때문에 소스를 잘 읽어 보시면 대부분 이해 되실 겁니다. 
(그렇게 믿는 거죠 ^^)