我已经在本地()设置了一个基本的 NodeJS 服务器(使用 nodemailer 模块)http://localhost:8080
,以便我可以测试服务器是否真的可以发送电子邮件。
如果我正确理解了 SMTP 选项(如果我错了,请纠正我),我可以尝试从我的服务器直接向某人的电子邮件帐户发送电子邮件,或者我可以发送电子邮件,仍然使用 Node.js,但是通过实际的电子邮件帐户(在本例中是我的个人 Gmail 帐户),即使用 SMTP。此选项要求我通过 NodeJS 远程登录该帐户。
所以在下面的服务器中,我实际上是在尝试使用 NodeJs 将电子邮件从我的个人电子邮件帐户发送到我的个人电子邮件帐户。
这是我的简单服务器:
var nodemailer = require('nodemailer');
var transporter = nodemailer.createTransport("SMTP", {
service: 'Gmail',
auth: {
user: '*my personal Gmail address*',
pass: '*my personal Gmail password*'
}
});
var http = require('http');
var httpServer = http.createServer(function (request, response)
{
transporter.sendMail({
from: '*my personal Gmail address*',
to: '*my personal Gmail address*',
subject: 'hello world!',
text: 'hello world!'
});
}).listen(8080);
但是,它不起作用。我收到谷歌的一封电子邮件说:
Google 帐户:登录尝试被阻止 如果这是您您可以切换到由 Google 开发的应用程序(例如 Gmail)来访问您的帐户(推荐)或在https://www.google.com/settings/security/更改您的设置lesssecureapps使您的帐户不再受到现代安全标准的保护。
我在 nodemailer GitHub 页面上找不到上述问题的解决方案。有没有人有解决方案/建议?
谢谢!:-)