因此,我们使用包nodemailer使用Node.js API发送电子邮件。使用smtp.gmail.com
在Windows上可以在本地上正常工作。将节点API移至 Ubuntu 16.04 后,发送电子邮件停止工作。该API的其余部分工作正常。
在我们的gmail帐户上,我们同时启用了以下两者:
代码:
var transporter = nodemailer.createTransport({
//tried other combinations aswell
service: 'gmail',
host: 'smtp.gmail.com',
//tried port 465 and secure:true
port: 587,
secure: false,
auth: {
user: 'sender@gmail.com',
pass: 'password'
}
});
var mailOptions = {
from: 'sender@gmail.com',
to: 'reciever@gmail.com',
subject: 'Welcome',
html: "Hello":
};`
我们尝试了其他邮件提供商,例如Outlook,Zoho,Yandex等。超时每次都会发生。 Ubuntu上的防火墙已禁用,并且安装是最新的。
解决方案
问题出在托管Ubuntu的服务提供商上。
答案 0 :(得分:0)
这只是建议通过Google的API绕过网络问题。
您需要通过Google控制台上的API管理器生成OAUTH CLIENT ID,然后选择“ Web应用程序”;获得授权代码后,您可以使用以下代码:
{{1}}