您可以mail从Ruby代码中调用该命令.使用system或反引号或更复杂的东西,比如open3与系统命令交互...以下是对不同方法的一个很好的概述:http://mentalized.net/journal/2010/03/08/5_ways_to_run_commands_from_ruby/
mail和sendmail我不太了解mail,但是Google上的快速搜索结果似乎表明它使用后缀,后者是Mac上安装的默认SMTP服务器。换句话说,您已经在Macbook Pro上安装并正在运行SMTP服务器。
因此,可以在没有SMTP服务器的情况下使用Ruby发送电子邮件吗?
是和否。您不需要在与Ruby进程相同的计算机上运行SMTP服务器。实际上,您甚至不需要运行自己的SMTP服务器。但是,您需要在某处的SMTP服务器发送电子邮件。
该文章在博闻网给出了什么SMTP做了很好的解释。本质上,您需要在某个可以接收您的电子邮件,与其他SMTP服务器进行对话并传递电子邮件进行传递的位置的SMTP服务器。使用Ruby,您可以将Net :: SMTP配置为连接到您选择的SMTP服务器。
如果要编写和执行将传递少量电子邮件的脚本,请在Gmail / Live上创建一个伪造的电子邮件帐户,然后使用其SMTP服务器发送电子邮件。
如果要构建并启动将向用户发送电子邮件的应用程序,请使用Mandrill,MailGun或SendGrid。Mandrill有免费套餐供您入门。
在大多数情况下,建议您不要运行自己的SMTP服务器,因为您的电子邮件可能会被标记为垃圾邮件。(Comcast可能还会认为您的网络上存在恶意软件。)像Mandrill这样的专业服务将帮助您设置SPF和DKIM记录,以对电子邮件进行身份验证并提高发送信誉。
(如果您只想在开发人员模式下测试电子邮件,请使用MailCatcher。)
注册一个Mandrill帐户,然后在Ruby中使用Net :: SMTP连接到其SMTP服务器。不需要其他软件。
| 归档时间: |
|
| 查看次数: |
7134 次 |
| 最近记录: |