在 Lua 中发送电子邮件

我想知道是否可能从 Lua 脚本发送电子邮件。我正在使用 Linux,所以我有 mail 命令,但我不知道如何使用它。

非常感谢您的任何帮助。

原文链接 https://stackoverflow.com/questions/6421871

点赞
stackoverflow用户4984564
stackoverflow用户4984564

你可能已经找到了解决方案,但由于该问题仍然显示在 Google 上,这里提供另一个适用于 Linux 的答案:

mail = io.popen("mail -s 'SUBJECT' user@example.com", "w")
mail:write("testing some stuff\n\4")
-- 在 Ubuntu 服务器上使用 Lua 5.2 进行测试

像 Lua 参考手册中所解释的那样,io.popen 将邮件程序作为文件打开。 重要的是以写入模式(“w”)打开文件,以便能够实际编写电子邮件正文。 然后,您只需使用 :write 编写消息,完成后,附加换行符“\n”和 EOT “\4” 字符,以告诉程序发送消息。

这种方法的优点是您不需要自己处理消息的发送,就像 LuaSocket 库一样,并且您不需要启用邮件服务器上的 SMTP 支持,这可能需要大量设置以正常运行,并且缺点是您需要访问 mailx,因此无法从任何位置发送消息。

希望这有所帮助 :)

2015-10-26 10:44:01