收到产生错误的电子邮件时,退回邮件的最佳方法是什么?例如,您将文件存储在db.BlobProperty中,但传入的电子邮件超过了1m的限制。该请求必须以某种方式出现退回错误,以使电子邮件不会每隔15分钟就不断到达服务器并增加计费。 (不要问我我怎么知道:-P ...确实不是我在另一个问题中发布的单独但相关的问题。here)
但是那个其他错误使我清楚地知道,在我收到带有多个附件的电子邮件之前,我需要处理这个问题,该附件为我提供了1gb的数据。
通常,邮件服务器会处理退回,就像您发送到错误的地址并将错误返回给客户端/服务器一样。我已经搜索过,没有发现任何有用的信息。青年汽车
是否有未记录的功能?返回以使原始服务器停止发送的正确响应是什么?
最佳答案
邮件到达您的App Engine应用后,便无法将其退回。您有两种选择:
无论哪种情况,您都应该安装一个顶级异常处理程序(像webapp和webapp2这样的框架都支持此功能),该异常处理程序记录异常,执行适当的操作,然后返回状态码200而不是500,因此该消息不会重复交付。
在您的特定情况下,我也会开始将附件存储在blobstore中而不是blob属性中,以避免1MB的限制。
关于python - 使用App Engine Python处理/退回有关错误的传入电子邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10696017/