【问题标题】:how to send email using lua programming language?如何使用 lua 编程语言发送电子邮件?
【发布时间】:2021-07-02 04:52:24
【问题描述】:

有人可以详细说明如何使用lua发送电子邮件,并请分享模板。

是否应该按照相同的程序使用 gmail 帐户发送邮件?我在 Windows 10 上并使用 lua 5.1。

场景:我有一个 lua 函数,我需要将邮件发送给少数用户。实现这一点的任何帮助都会有所帮助。 谢谢。

【问题讨论】:

  • LuaSocket 文档提供的示例有什么问题?如果有什么你不明白的,你应该指出来。我的意思是你标记了你的问题 luasocket,所以我想你已经知道你可以使用 LuaSocket 发送电子邮件了吧?
  • 你说得对,我正在浏览 luasocket 文档,但我不明白使用模板发送电子邮件需要进行哪些必要的更改。请考虑我是lua的新手。 @小猪
  • 请指导我使用 lua 中的 gmail 帐户发送电子邮件所需遵循的步骤。我正在使用 lua 5.1 和 Windows 10。非常感谢任何帮助。 @小猪
  • 您的问题目前缺乏有关您如何尝试自己解决此问题的信息。你可以试试这个Q&A中的信息,也许这足以帮助你解决问题
  • 对不起,我终于可以使用 luasocket 和 luasec 库发送邮件了。 This 实际回答我所遵循的。

标签: email lua gmail luasocket


【解决方案1】:

发件人:http://w3.impa.br/~diego/software/luasocket/smtp.html

smtp.send{
  from = string,
  rcpt = string or string-table,
  source = LTN12 source,
  [user = string,]
  [password = string,]
  [server = string,]
  [port = number,]
  [domain = string,]
  [step = LTN12 pump step,]
  [create = function]
}

这描述了将单个表作为参数的函数 smpt.send。 方括号中的字段是可选的。 阅读文档了解详情。

以下示例显示了如何发送电子邮件。请注意 smtp.send 参数的表字段如何填充值。您必须为您的用例更改这些值。不知道有什么不清楚的地方。

如果你因为缺乏必要的 Lua 知识而无法理解它,我建议你做一个初学者教程并阅读 Lua 参考手册和 Lua 编程

-- load the smtp support
local smtp = require("socket.smtp")

-- Connects to server "localhost" and sends a message to users
-- "fulano@example.com",  "beltrano@example.com", 
-- and "sicrano@example.com".
-- Note that "fulano" is the primary recipient, "beltrano" receives a
-- carbon copy and neither of them knows that "sicrano" received a blind
-- carbon copy of the message.
from = "<luasocket@example.com>"

rcpt = {
  "<fulano@example.com>",
  "<beltrano@example.com>",
  "<sicrano@example.com>"
}

mesgt = {
  headers = {
    to = "Fulano da Silva <fulano@example.com>",
    cc = '"Beltrano F. Nunes" <beltrano@example.com>',
    subject = "My first message"
  },
  body = "I hope this works. If it does, I can send you another 1000 copies."
}

r, e = smtp.send{
  from = from,
  rcpt = rcpt, 
  source = smtp.message(mesgt)
}

【讨论】:

  • 感谢@Piglet 指导我,我遵循了这个,然后发现谷歌的 SMTP 邮件服务器会阻止所有不太安全的连接,我不得不为此使用 luasec 库。 This 回答实际上帮助了我更多。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-15
  • 2013-06-21
  • 1970-01-01
  • 2016-04-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多