2013-03-12 5 views
2

nodemailer를 사용하여 SES로 이메일을 보내고 있습니다. 나는이처럼 설정하고 왜 이런 일이에 관해서는Node.js Nodemailer 및 SES - 오류 : 전송 방법이 정의되지 않았습니다.

Error: No transport method defined

어떤 아이디어 :

require("nodemailer").createTransport("SES", { 
    AWSAccessKeyID: "AKIAJZFUSYQJNEX3VS2A", 
    AWSSecretKey: "XXX", //real information removed 
    SeviceUrl:"https://email.us-west-1.amazonaws.com" 
}), 

는 내가 가져 이메일을 보내면?

* 편집 : * 두 솔루션을 시도, 그들은

메일을 전송에 전송을 사용하도록해야

답변

4

를 작동하지 않았다. 다음과 같이 그냥

var nodemailer = require("nodemailer"); 
var transport = nodemailer.createTransport("SES", { 
    AWSAccessKeyID: "AKIAJZFUSYQJNEX3VS2A", 
    AWSSecretKey: "XXX", 
    SeviceUrl:"https://email.us-west-1.amazonaws.com" 
}), 

//On sending mail 
nodemailer.sendMail({ 
     transport : transport, //pass your transport 
     sender : '[email protected]' , 
     to : '[email protected]', 
     subject : "SUBJECT", 
     html: '<p> Hello World </p>' 
     }) 

참고하십시오 : 여기 가정, 당신의 전송은 유효 하나이며 키는 충분한 권한입니다

3

귀하의 ServiceUrl가 잘못 구성되어 있습니다 (물론 네트워크 권한.). 현재 Amazon SES는 available in us-east-1입니다. ServiceUrlhttps://email.us-east-1.amazonaws.com으로 설정하십시오.

나중에 참조 할 수 있도록 AWS 비밀 키를 공유하지 마십시오. AWS 키를 이전에 질문에 게시 했으므로 AWS 키를 돌리는 것이 좋습니다.

+0

감사합니다. 키에 대해 감사드립니다. –