2

nodemailer を使用して SES でメールを送信しています。私は次のように設定しています:

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

メールを送信すると、次のように表示されます。

エラー: 転送方法が定義されていません

なぜこれが起こっているのかについてのアイデアはありますか?

*編集:*両方のソリューションを試しましたが、機能しませんでした

4

2 に答える 2

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 : 'senderid@email.com' ,
        to : 'receiverid@email.com',
        subject : "SUBJECT",
        html: '<p> Hello World </p>'
      })

注:ここでは、トランスポートが有効なものであり、キーで十分な権限(ネットワーク権限も)であると想定しています。

于 2013-03-12T09:57:05.343 に答える
3

が正しく構成されていませServiceUrlん。現時点では、 AmazonSESはus-east-1でのみご利用いただけます。に設定ServiceUrlしてくださいhttps://email.us-east-1.amazonaws.com

また、今後の参考のために、AWSシークレットキーを共有しないでください。AWSキーは質問の前半に投稿されているため、ローテーションすることを強くお勧めします。

于 2013-03-13T00:17:20.450 に答える