Используйте функцию Node Lambda для анализа электронной почты, хранящейся в AWS S3 Bucket, с помощью SES - PullRequest
0 голосов
/ 17 мая 2018

Вот раздел функции Node Lambda, которая получает электронную почту, хранящуюся в S3.Как я могу просто получить текстовое / текстовое содержимое из возвращенного объекта данных?

Нужно ли включать зависимость разбора электронной почты NPM с помощью функции lambda (загруженной как .zip) или мнеиспользовать какое-нибудь регулярное выражение в лямбде, чтобы получить раздел, который я хочу?Если так, то как бы это выглядело?

exports.handler = function(event, context, callback) {

    var sesNotification = event.Records[0].ses;

    // Retrieve the email from your bucket
    s3.getObject({
        Bucket: bucketName,
        Key: "ses/"+sesNotification.mail.messageId
    }, function(err, data) {
        if (err) {
            console.log(err, err.stack);
            callback(err);
        } else {

            data

        }
    });

};

1 Ответ

0 голосов
/ 17 мая 2018

Было бы безопаснее использовать mailparser пакет для разбора.

const simpleParser = require('mailparser').simpleParser;

simpleParser(data, (err, mail)=>{
        console.log(mail.text);
})
...