我们有一个内置rails 3.2.8的应用程序。我们正在向客户发送电子邮件。我想阻止某些电子邮件地址。基本上邮寄者只是忽略那些特定的电子邮件地址。
例如:我的公司名称是abc,我不想向所有员工发送电子邮件,即john@abc.com或rayn@abc.com,即*@abc.com
我该怎么做?
PS:我使用的是sendgrid,他们没有提供这样的内容。
修改
将此代码放在初始化程序目录中:
class EmailAddressFilter
def self.delivering_email(message)
message.perform_deliveries = false
end
end
ActionMailer::Base.register_interceptor(EmailAddressFilter)
应该阻止所有电子邮件。但我仍然可以在开发日志中看到电子邮件。
PS:我已经重新启动了我的服务器。
答案 0 :(得分:3)
在config/initializers
的文件中,您可以添加类似
class EmailAddressFilter
def self.delivering_email(message)
# permit or deny the message using its "to", "body" etc properties
# note message.to is an array (multiple emails)
message.perform_deliveries = Email.whitelisted?(message.to)
end
end
ActionMailer::Base.register_interceptor(EmailAddressFilter)