【问题标题】:Rails, check if email was sent or notRails,检查是否发送了电子邮件
【发布时间】:2012-08-27 01:48:53
【问题描述】:

我有一个向注册用户发送电子邮件的应用。当用户使用某些功能时,此应用会自动向用户发送一封电子邮件。此外,在管理员屏幕上,管理员可以向所有因任何原因未自动收到电子邮件的人发送电子邮件。我在数据库中存储了一个值,显示电子邮件是否已送达,因此管理员不会向已经收到电子邮件的人发送电子邮件。

问题是:如何检查电子邮件是否正确发送以更新此值?我不是在谈论测试,我需要在调用 deliver 方法后立即检查电子邮件是否已发送,或者是否发生任何问题,例如连接丢失或电子邮件无效。有什么方法或方法可以做到这一点吗?

谢谢。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 email


    【解决方案1】:

    当您发送消息并且没有引发错误时,您可以假设邮件已送达(至少您可以假设某些系统承担了送达您的消息的责任)。

    然而,交付失败的原因有很多;有时您可能会在数小时甚至数天后收到错误消息。您将需要有一个退回邮件地址并检查返回的邮件。如果要处理弹跳,请检查具有弹跳处理的开源软件,例如phplist。这并不像您想象的那么简单。

    另一种选择是通过我们SendGrid 等专用服务发送电子邮件。此服务提供的 API 可让您检索有关您的消息的信息。

    【讨论】:

      【解决方案2】:

      您还可以使用mailman gem 来解析回复电子邮件中的错误电子邮件。

      【讨论】:

        猜你喜欢
        • 2018-04-09
        • 2012-12-20
        • 2021-03-13
        • 1970-01-01
        • 1970-01-01
        • 2012-05-16
        • 2021-02-25
        • 2011-06-03
        • 2017-07-09
        相关资源
        最近更新 更多