0

我使用 Sinatra Ruby 作为 API 并使用 Pony gem 发送电子邮件。我想记录每封已发送邮件的状态(电子邮件是否成功发送,发送给谁等)。我在 Sinatra 控制台中只看到路由日志,但没有任何电子邮件迹象。简而言之,我想像在 Rails 控制台中一样维护日志。

4

1 回答 1

0

文档中有一些方法可以查看电子邮件是否被退回:

从电子邮件中获取错误报告:

@mail = Mail.read('/path/to/bounce_message.eml')

@mail.bounced?         #=> true
@mail.final_recipient  #=> rfc822;mikel@dont.exist.com
@mail.action           #=> failed
@mail.error_status     #=> 5.5.0
@mail.diagnostic_code  #=> smtp;550 Requested action not taken: mailbox unavailable
@mail.retryable?       #=> false

因此,当您发送它时,puts @mail.bounced?如果您有权访问已发送邮件的实例变量,则可以运行,否则查找.eml消息保存的位置。

于 2021-01-12T06:00:59.463 回答