Используйте функцию Node Lambda для анализа электронной почты, хранящейся в AWS S3 Bucket, с помощью SES
Вот раздел функции 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 ответ
Было бы безопаснее использовать mailparser
пакет для разбора.
const simpleParser = require('mailparser').simpleParser;
simpleParser(data, (err, mail)=>{
console.log(mail.text);
})