我必须在nodeJS和angular 6中实现像webmail这样的电子邮件服务器。
关于我的情况, 用户需要提供其电子邮件和电子邮件密码。然后,我必须确定其smtp服务器地址并进行身份验证。 之后,该用户应该能够发送和接收连接到提供的电子邮件的电子邮件。
我研究了我有什么选择,并且大多数文章都说node-mailer是发送电子邮件的最佳选择,但是除了接收电子邮件和 node-imap 之外,没有其他功能到目前为止,我最好的选择是mailin库。
我已经尝试在mailin中进行此操作,但是我最近开始从事新工作,因此我不了解mailin库中的大多数实现。
如果有人可以为我提供mailin代码示例或告诉我是否还有其他选择,这将非常有帮助。
答案 0 :(得分:0)
只需遵循文档中的示例:
为您的项目创建文件夹并导航到它。
安装Mailin:sudo npm install mailin
使用此内容source from docs创建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
您需要的事件index.js
是mailin.on('message'...
。您可以键入console.log(data);
,重新启动应用程序,然后在发送邮件时,您将在控制台中看到数据。
答案 1 :(得分:0)
如果有人仍在尝试使用Node JS接收电子邮件,我会推荐node-mailin。它与mailin几乎相同(不再保留)。发送到服务器的电子邮件被解析为JSON,您可以使用它们执行任何操作。您也可以根据发件人的电子邮件地址或IP拒绝电子邮件,也可以根据您不想使用的地址拒绝电子邮件。