Отправка электронных писем с использованием функции Lambda, NodeJS, Mailgun и тестирование Params в Postman - PullRequest
0 голосов
/ 25 октября 2019

Я учусь всему этому на ходу. Цель состоит в том, чтобы просто отправить электронное письмо, используя переменные, и вот код, который у меня есть в test.js :

const mailgunSdk = require('mailgun-js');
const apiKey = 'MAILGUN_API_KEY';
const domain = 'MAILGUN_DOMAIN';
const mailgun = mailgunSdk({
    apiKey,
    domain
});

exports.handler = async(event, context, callback) => {

    //console.log(event.body)
    //const data = JSON.parse(event.body)

    let response
    try {
        /* Send email to recicipent */
        response = await mailgun.messages().send({
            from: 'Reginald Fromington <mg@fromaddress.com>',
            to: 'bobloblaw@gmail.com',
            subject: 'Hello',
            text: event.messageText
        })
    } catch (e) {
        //console.log('Err', e)
        return {
            statusCode: e.statusCode || 500,
            //body: JSON.parse({
            //  error: e.message
            //})
        }
    }

    return {
        statusCode: 200,
        body: JSON.stringify({
            result: response.message
        })
    }
}

Используя Почтальон, я могу получить сообщение вмой почтовый ящик, если у меня есть text: в виде строки, например text: 'Thank you for your email', если я запускаю функцию без каких-либо параметров. Однако, если я хочу использовать переменную, я понятия не имею, как передать их в функцию. Я пробовал text: event.messageText, text: response.messageText, text: mailgun.messageText и все возможные комбинации переменных, которые я мог себе представить.

Большая часть документации, которую я смог найти, устарела или не решает эту проблему. Я также не знаю, как Google решить эту проблему, потому что, опять же, я новичок во всем этом.

Спасибо, -Andrew Postman Screenshot Попытка передать параметрыв лямбда-функцию

...