Amazon SES入站电子邮件传递失败4.3.0 451

时间:2017-09-05 11:49:31

标签: amazon-web-services email smtp amazon-ses

我已在AWS SES中为入站电子邮件设置了规则集。此入站规则接收电子邮件,lambda函数处理电子邮件内容。

直到几天前我才开始收到以下错误消息,这是在向连接到入站规则的地址发送电子邮件时:

import { Meteor } from "meteor/meteor";
import { Mongo } from "meteor/mongo";
export const Attachment = new Mongo.Collection("attachment");
let BinData = Mongo.BinData; //wrong initialisation

function createAttachment(fileData) {
  const data = new Buffer(fileData, "base64");
  Attachment.insert({file: new BinData(0, data)});
}

但是 - 该规则仍会触发相应的lambda函数,这意味着电子邮件实际上已经发送。

如何阻止服务器发送此响应?

2 个答案:

答案 0 :(得分:0)

我认为导致这种情况的lambda函数不是这种情况的罪魁祸首。

还有另一条规则失败,因为它无法访问应该保存传入电子邮件的S3存储桶。

获得的经验:当传入的SES规则无法成功退出时,将从电子邮件服务器发回此错误消息。

答案 1 :(得分:0)

如果将来有人遇到这个问题,而卡尔的解决方案不是问题:我遇到了这个确切的问题,事实证明,操作顺序是引起该错误的原因。

如果Lambda函数动作在S3动作之前 ,则即使流程按预期工作,也会抛出4.3.0 smtp; 451 4.3.0 This message could not be delivered due to a recipient error. Please try again later错误。如果将它们交换过来,那么它是S3然后是lambda,则可以正常工作。