使用Node.js服务器发送和接收电子邮件

3

我需要在nodeJS和Angular 6中实现类似Webmail的电子邮件服务器。

关于我的情况,用户需要提供他们的电子邮件和电子邮件密码。然后我需要识别他们的SMTP服务器地址并进行身份验证。之后,用户应该能够发送和接收连接到提供的电子邮件的电子邮件。

我已经研究了我有哪些选项,大多数文章都说node-mailer是发送电子邮件的最佳选择,但没有接收电子邮件的功能,除此之外,目前我最好的选择是mailin库。

我尝试在mailin中实现它,但我最近才开始使用新工作中的node开发,并且无法理解mailin库中的大部分实现。

如果有人可以帮我提供mailin的代码示例,或者告诉我是否有其他选项,那将非常有帮助。

2个回答

1

只需按照文档中的示例操作:

为您的项目创建文件夹并进入该文件夹。

安装Mailin:sudo npm install mailin

创建index.js文件,并使用此内容 来自文档的源代码mailin.on('authorizeUser' 不需要,可以忽略。

启动应用程序:node index.js

您需要允许使用端口25。在服务器控制台中键入ufw allow 25

您需要在托管面板中添加DNS记录,以将其指向您的服务器。

现在,您可以在PC上使用Telnet测试服务器。尝试连接到它:

telnet domain-for-the-server.com 25

您可以向doesntmatterthename@domain-for-the-server.com发送电子邮件。

您需要的事件是mailin.on('message'...,对应的文件为index.js。您可以输入console.log(data);,重新启动应用程序,并发送邮件,您将在控制台中看到数据。

0
如果有人仍在尝试使用Node JS接收电子邮件,我建议使用node-mailin。它几乎与不再维护的mailin相同。发送到您的服务器的电子邮件将被解析为JSON,您可以对其进行任何操作。您还可以根据发件人的电子邮件地址或IP拒绝电子邮件,或者如果它发送到您不想使用的电子邮件地址。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接