如何为Rails 3应用中的用户创建匿名电子邮件地址(例如abcd11245@craigslist.org)?

时间:2012-04-13 10:41:27

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

我正在运行Craigs列表样式公告板,为此我需要创建匿名电子邮件地址(例如123fghuii@craigslist.org),并为创建帖子的人转发。

我将如何在Rails 3中执行此操作?请非常具体,如果可能的话,请在回复中详细说明,因为我是Rails的新手。

非常感谢,

费萨尔

4 个答案:

答案 0 :(得分:4)

您还可以利用第三方服务,例如Mailgun。这些为您提供的API允许您读取传递到特定域的电子邮件。

请参阅http://mailgun.net/,特别是有关接收电子邮件的文档。 http://documentation.mailgun.net/user_manual.html#receiving-messages

您还可以使用EventMachine之类的东西构建自己的事务SMTP服务器,您的Ruby代码将监听所有已发送的电子邮件并处理邮件中的TO:标头。 EventMachine具有SMTP协议助手(请参阅http://eventmachine.rubyforge.org/EventMachine/Protocols/SmtpServer.html)。

答案 1 :(得分:4)

我已经实现了这个并看了几个解决方案。到目前为止,我发现最简单的是http://cloudmailin.com

Cloudmailin将您的电子邮件转换为HTTP POST,转换为您指定的回调网址。由此,您可以选择发件人和消息。

有一些东西使它真正有用。首先,您可以指定一个通配符MX条目,该条目会将您的所有电子邮件发送到您指定的回调网址,这意味着您可以根据通过电子邮件发送到的电子邮件地址执行不同的操作。我发现的第二件事非常有用,就是可以选择剥离附件并将它们存储在S3存储桶中。这两者的组合使得处理具有附件的电子邮件比实现自己的邮件服务器容易得多。

请注意,涉及的费用很少,您可以在http://cloudmailin.com/plans 编辑查看计划 - 有免费套餐可用,但不包含上述内容< / p>

这样做的另一个好处是你没有绑定到rails堆栈(不要误解我,我喜欢rails),因为它是一个HTTP请求,你可以在任何技术堆栈中简单地实现相同的回调url

答案 2 :(得分:0)

嗯,这不是一个微不足道的问题......你不会只用rails来解决它!

我认为您至少需要安装第三方:电子邮件服务器,如Postfix。

这里有一些我刚刚用Google搜索的教程:

答案 3 :(得分:-2)

关于匿名电子邮件地址的一个最大误解是它们仅用于令人讨厌的犯罪活动。实际上,它们是保护在线隐私和保护自己免受垃圾邮件侵害的谨慎方法。 Craigslist Email Account