2017-09-18 13 views
2

私は、 "AWS-SDK" を使用しています:私のコードは次のようになり、 "^ 2.117.0を":なぜノード上のamazon sesから電子メールを送信できないのですか?

var AWS = require('aws-sdk'); 
exports.sendAWSMail = function(message, destination){ 
    const ses = new AWS.SES(); 
    // http://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SES.html#sendEmail-property 
    const sendEmail = ses.sendEmail; 
    var data = { 
    Destination: { 
    ToAddresses: [ 
     "[email protected]" 
    ] 
    }, 
    Message: { 
    Body: { 
     Html: { 
     Charset: "UTF-8", 
     Data: "This message body contains HTML formatting. It can, for example, contain links like this one: <a class=\"ulink\" href=\"http://docs.aws.amazon.com/ses/latest/DeveloperGuide\" target=\"_blank\">Amazon SES Developer Guide</a>." 
     }, 
     Text: { 
     Charset: "UTF-8", 
     Data: "This is the message body in text format." 
     } 
    }, 
    Subject: { 
     Charset: "UTF-8", 
     Data: "Test email" 
    } 
    }, 
    Source: "[email protected]", 
    } 
    sendEmail(data) 
} 

しかし、私はこのエラーを取得する:

例外TypeError:this.makeRequestではありませんSVCの機能 。(匿名関数)(/Users/iagowp/Desktop/trampos/frutacor/node_modules/aws-sdk/lib/service.js:499:23)

私は、任意のノードの例を見つけることができませんでした彼らのウェブサイトが、他の場所(例えばhereなど)から見たものからは正しいように見えます。私は間違って何をしていますか?

答えて

1

主な問題は5行目ですが、エラーと成功したリクエストを記録するためにコールバック関数を追加することは常に良い考えです。

var AWS = require('aws-sdk'); 
exports.sendAWSMail = function(message, destination){ 
    const ses = new AWS.SES(); 
    var data = { 
    Destination: { 
    ToAddresses: [ 
     "[email protected]" 
    ] 
    }, 
    Message: { 
    Body: { 
     Html: { 
     Charset: "UTF-8", 
     Data: "This message body contains HTML formatting. It can, for example, contain links like this one: <a class=\"ulink\" href=\"http://docs.aws.amazon.com/ses/latest/DeveloperGuide\" target=\"_blank\">Amazon SES Developer Guide</a>." 
     }, 
     Text: { 
     Charset: "UTF-8", 
     Data: "This is the message body in text format." 
     } 
    }, 
    Subject: { 
     Charset: "UTF-8", 
     Data: "Test email" 
    } 
    }, 
    Source: "[email protected]", 
    } 
    ses.sendEmail(data, function(err, data) { 
    if (err) console.log(err, err.stack); // an error occurred 
    else  console.log(data);   // successful response 
    }); 
} 
+0

ありがとうございますが、なぜその行が私に失敗するのか説明できますか?とにかく、それは本当に私の問題だった、今私は(地域を設定する必要があります)と協力することができるより有用なエラーメッセージを取得 – iagowp

+0

地域を設定したら、それは魅力的なように動作するはずです。 – mostafazh

+1

5行目が間違っている理由を詳しく説明していただければ幸いです。それは働いた、ありがとう – iagowp