我已经在本地(http://localhost:8080)设置了一个基本的NodeJS服务器(使用nodemailer模块),这样我就可以测试服务器是否可以实际发送电子邮件了.
如果我理解正确的SMTP选项(请纠正我,如果我错了),我可以尝试从我的服务器发送电子邮件给某人的电子邮件帐户直接,或者我可以发送电子邮件,仍然使用Node.js的,但通过实际的电子邮件帐户(在这种情况下是我的个人Gmail帐户),即使用SMTP.此选项要求我通过NodeJS远程登录该帐户.
因此,在下面的服务器中,我实际上是尝试使用NodeJ从我的个人电子邮件帐户向我的个人电子邮件帐户发送电子邮件.
这是我的简单服务器:
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);
Run Code Online (Sandbox Code Playgroud)
但是,它不起作用.我收到了谷歌的一封电子邮件说:
Google帐户:登录尝试已被阻止如果是您的话您可以切换到Google制作的应用程序(如Gmail)来访问您的帐户(推荐)或更改您的设置,网址为https://www.google.com/settings/security/ lesssecureapps,以便您的帐户不再受现代安全标准的保护.
我在nodemailer GitHub页面上找不到上述问题的解决方案.有没有人有解决方案/建议?
谢谢!:-)