Отправка электронной почты из node.js с помощью сервиса Amazon SES не работает

Я работаю над проектом chatbot с использованием Google Dialogflow на node.js и хотел бы использовать Amazon SES, но по какой-то причине он не работает, и код, который я использую, выглядит следующим образом:

var aws = require('aws-sdk');
var ses = new aws.SES(
    { 
    "accessKeyId": functions.config().aws.key,
     "secretAccessKey": functions.config().aws.secret, 
     "region": "eu-west-1" ,
    });


var eParams = {
        Destination: {
            ToAddresses: ["x@y.com"]
        },
        Message: {
            Body: {
                Text: {
                    Data: "Hey! What is up?"
                }
            },
            Subject: {
                Data: "Email Subject!!!"
            }
        },
        Source: "x.y@z.com"
    };

    var email = ses.sendEmail(eParams, function(err, data){
        if(err) console.log(err);
        else {
            console.log("===EMAIL SENT===");
            console.log(data);
        }
    });

Ошибка, которую я получаю, когда просматриваю журналы в Firebase Functions, выглядит так: dialogflowFirebaseFulfillment { UnknownEndpoint: Недоступный хост: email.us-standard.amazonaws.com'. This service may not be available in theес-запад-1` регион. в Request.ENOTFOUND_ERROR (/user_code/node_modules/aws-sdk/lib/event_listeners.js:456:46)

Я использую бесплатный уровень Firebase, это то, что имеет значение?

1 ответ

Решение

Свободный ("искровой") уровень облачных функций для Firebase не разрешает сетевые подключения за пределами Google.

Однако вы можете перейти на план "Blaze", который разрешает сетевые подключения. Даже с платным уровнем все еще существует "бесплатный уровень", который обеспечивает разумный уровень разработки и использования, который не повлечет за собой никаких расходов.

С https://firebase.google.com/pricing/ (наведите курсор на вопросительный знак рядом с облачными функциями):

В плане Blaze Cloud Functions предоставляет постоянный бесплатный уровень. Первые 2 000 000 вызовов, 400 000 ГБ-сек, 200 000 ЦП-сек и 5 ГБ выходного интернет-трафика предоставляются бесплатно каждый месяц. Вы платите только за использование после этого бесплатного выделения.

Другие вопросы по тегам