我正在运行一个 Craigs 列表样式的公告板,我需要为此创建匿名电子邮件地址(例如 123fghuii@craigslist.org),并为创建帖子的人转发。
我将如何在 Rails 3 中执行此操作?由于我是 Rails 新手,因此请在您的回复中非常具体并尽可能详细。
非常感谢,
费萨尔
我正在运行一个 Craigs 列表样式的公告板,我需要为此创建匿名电子邮件地址(例如 123fghuii@craigslist.org),并为创建帖子的人转发。
我将如何在 Rails 3 中执行此操作?由于我是 Rails 新手,因此请在您的回复中非常具体并尽可能详细。
非常感谢,
费萨尔
您还可以利用第三方服务,例如 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)。
我已经实现了这一点,并查看了一些解决方案。到目前为止,我发现的最简单的是http://cloudmailin.com
Cloudmailin 将您的电子邮件转换为 HTTP POST 到您指定的回调 url。从中,您可以选择发件人和消息。
有几件事使它真正有用。首先,您可以指定通配符 MX 条目,它将所有电子邮件发送到您指定的回调 url,这意味着您可以根据电子邮件地址执行不同的操作。我发现真正有用的第二件事是,可以选择剥离附件并将它们存储在 S3 存储桶中。这两者的结合使得处理带有附件的电子邮件比实现自己的邮件服务器要容易得多。
请注意,涉及的费用很小,您可以在http://cloudmailin.com/plans查看计划 编辑- 有一个免费计划,但不包括上述内容
这样做的另一个优点是您不会被绑定到 rails 堆栈(不要误会,我喜欢 rails),因为它是一个 HTTP 请求,您可以非常简单地在任何技术堆栈中实现相同的回调 url。
好吧,这不是一个微不足道的问题......你不会只用 rails 来解决它!
我认为你至少需要安装一个 3rd-party :一个电子邮件服务器,比如 Postfix。
这里有一些我刚刚用谷歌搜索的教程:
关于匿名电子邮件地址的最大误解之一是它们仅用于令人讨厌的犯罪活动。实际上,它们是保护在线隐私和保护自己免受垃圾邮件侵害的审慎方法。Craigslist 电子邮件帐户