使用nodemailer发送电子邮件不适用于Internet服务,但适用于本地服务器

时间:2015-04-17 04:38:27

标签: node.js email heroku nodemailer

我正在尝试使用nodemailer从我的node.js应用发送电子邮件。我在Google帐户enabling less secure apps之后成功地从我的本地服务器发送电子邮件。

但是当我将代码部署到heroku时,它无法发送电子邮件,因为谷歌阻止了我的登录尝试。所以我登录了我的帐户并点击了登录尝试来自我的选项。但它仍然无法正常工作。然后我设置了一个project on runnable.com并且阻止了相同的标志。我为此做了同样的事并接受了它作为我的尝试。但是我仍然无法发送电子邮件。

即将发生的错误是:

Server listening on port 80                                                                                                                                                                              
Failed in sending mail                                                                                                                                                                                   
{ success: false, existing: false, sendError: true }                                                                                                                                                     
{ [Error: Invalid login]                                                                                                                                                                                 
  code: 'EAUTH',                                                                                                                                                                                         
  response: '534-5.7.14 <https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbsNg\n534-5.7.14 LiCfP8u0IX20V3Y1nFt7iYuwJCPg4LVgRxVvEPO5y4-XOjzSsm_xa0XIBE3NP2bM5euv4A\n534-5.7.14 m6LSg0_DQ  
Qj9kOm_JuwykQxVyYSKaLGyeibhi_cHtx3Pu4I4UISJCPt3TvHdxCUebMzTbu\n534-5.7.14 2F9wLa-IFpKHf9HPap4Aeu11Nup9ZAlpOCGAmcnbERFeAufeIgAsExtGkrmV2X7mktJ5nq\n534-5.7.14 epNHDpwg2EwMVwzOrpt8rGZahYvs> Please log i  
n via your web browser and\n534-5.7.14 then try again.\n534-5.7.14 Learn more at\n534 5.7.14 https://support.google.com/mail/bin/answer.py?answer=78754 a76sm5828252oig.11 - gsmtp',                     
  responseCode: 534 }

请帮助。我迫切需要让它运行。

1 个答案:

答案 0 :(得分:1)

我遇到同样的问题,请点击您的回复邮件上的链接&#34; https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbsNg \ n534-5.7.14&#34;并粘贴到浏览器,您会看到一条公告,显示谷歌刚刚阻止您的登录请求,因为它从奇怪的设备执行,然后您可以按照谷歌指令接受该设备。 它在我的案例中起作用。但我不知道如果heroku dynos睡了然后再次醒来会发生什么,也许它会改变机器而你会再次遇到这个问题。 在这种情况下,考虑使用vps来托管您的邮件应用程序。