当前位置: 首页 > 知识库问答 >
问题:

发送电子邮件在本地有效,但一旦部署就不行?

魏浩广
2023-03-14

我有一个流星应用程序,正在使用电子邮件和密码包来处理基本的密码重置功能。

在本地计算机上,我将mail_urlenv变量设置为:

smtps://{user}:{password}@smtp.gmail.com:465

在对相关的gmail帐号进行了一些改动后(我不得不允许不太安全的应用程序),它起作用了。

我的生活环境是heroku,所以我在那里设置了env变量,使用:

heroku config:set MAIL_URL=smtps://{user}:{password}@smtp.gmail.com:465

然后确认它是使用heroku config设置的。但由于某种原因,当我尝试在生产环境中重置密码时,它会抛出以下错误:

调用方法“忘记密码”时出现异常错误:无效登录:534-5.7.14

我甚至执行了herokurestart,以绝对确定env变量已被取走,但仍然得到错误。奇怪的是,这与我启用“安全性较低的应用程序”之前遇到的错误是一样的。

有人知道为什么会这样吗?关于如何修复它的建议?

共有1个答案

宓昂雄
2023-03-14

在Heroku web上的Settings/Config Vars框中,您真的看到这个设置了吗?

我看你的问题可能是因为没有确认验证码...看看这个:带Gmail和NodeJS的Nodemailer

 类似资料:
  • 问题内容: 我正在Windows上使用WampServer来测试站点。我有一个注册系统,用户会收到一封确认电子邮件。 是否可以从本地主机发送电子邮件? 问题答案: 如果要直接从本地主机发送电子邮件,则需要安装邮件传输代理(MTA),或者安装SMTP服务。 IIS提供了一个。否则,您可以在Google上找到其他人。 您也可以更改 邮件设置。这将不使用每条说来发送电子邮件,而是用于允许您从PHP脚本发

  • > 所以我需要在每个新的测试套件执行后发送一封电子邮件。 MVN Clean:删除“target:surefire目录” 如果我执行我的测试用例,将创建一个新的“可电子邮件报告”。 我尝试将我的发送电子邮件报告放在@AfterSuite方法中,但是当测试执行时,它找不到报告,因为只有在测试套件完成后才生成报告。 对于如何在测试套件完成后发送报告,可以使用TestNG和我的电子邮件方法,有什么想法吗

  • 我正在使用Google表单将多条消息合并到一个每日电子邮件中,使用脚本和每日定时触发器发送(代码从这里复制,下面是我的版本)。 例如,一个电子邮件地址是abc@example.co.uk,他们收到了电子邮件,但在我的收件箱(xyz@example.co.uk)中是发送到abc@example.co.uk的电子邮件,但不是转发的消息或回复。 有什么办法阻止这一切吗?

  • 我正在尝试通过PHPMailer发送电子邮件,它工作得很好。只有一个问题,我不知道如何解决。有可能,我可能需要尝试发送电子邮件到一个无效的地址,因为一个不存在的域。因为域名不存在,所以这些电子邮件不会被发送也没关系。当我尝试发送电子邮件时,会收到一条错误消息,PHPMailer将停止,并且不会继续向其他(有效)地址发送电子邮件。有没有办法跳过那些无效的电子邮件并强制PHPMailer继续而不显示错

  • 我们研发的App可以在用户确认访问我们的分支机构后向其发送电子邮件。当我们使用以下Gmail配置时,它可以正常工作:电子邮件:ainetwgdocs@gmail.comPasswd:XXXXX SMTP服务器:smtp.gmail.com端口:587但是,当我们尝试使用基于域的帐户时,它根本不起作用。我们使用以下参数:电子邮件:contact@ainetw.comPasswd:XXXXX SMTP

  • 我正在使用PHPMailer通过联系人表单发送电子邮件。当我在输入字段中输入无效的电子邮件地址时,电子邮件仍会发送。我想同时执行客户端和服务器端验证。 PHPMailer是否有一个内置的验证系统来检查无效的电子邮件地址?如果输入的电子邮件无效,我想返回一个错误,而不是发送电子邮件。