node.js - Nodemailer "Error: Missing credentials for "PLAIN“Gmail API 凭据之后

标签 node.js heroku nodemailer

本地托管时一切正常,但是当访问 Heroku 上托管的后端时,我收到错误“错误:缺少“PLAIN”的凭据。这对我来说也不是第一次,我经历了整个过程故障排除困难。即使尝试了不同的邮件服务以查看错误是否会消失,也没有任何效果。我什至获得了 Gmail API OAuth 代码,但此错误仍然出现在 Heroku 上。有什么想法吗?

let transporter = nodemailer.createTransport({
        host: "smtp.gmail.com",
        service: Gmail,
        port: 587,
        secure: false, // true for 465, false for other ports
        auth: {
            user: process.env.EMAIL,
            pass: process.env.PASS,
            clientId: process.env.CLIENTID,
            clientSecret: process.env.CLIENTSECRET,
            refreshToken: process.env.REFRESH
        },
        tls: {
            rejectUnauthorized: false
        }
    });

Heroku:Console Image for Error Log

最佳答案

请注释掉主机:“smtp.gmail.com”作为其下面的服务行就足够了。您可以将密码放在 pass 前面的单引号中,这样可以快速修复: pass: 'yourpassword', 当然,这不是最好的方法,但它可能会暂时解决问题,直到您找到更好的方法。

关于node.js - Nodemailer "Error: Missing credentials for "PLAIN“Gmail API 凭据之后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60823340/

相关文章:

node.js - 有没有办法将我的控制台附加到 heroku 应用程序以查看应用程序/网站事件?

ruby-on-rails - 尝试在 Heroku 上的 Rails 中将价格设置为扩展十进制/BTC

ruby-on-rails - 在 heroku 上找不到文件

javascript - 错误 :Invalid login 535 5. 0.0 身份验证失败

node.js - OAuth 2.0 Playground 错误 403 : access_denied

javascript - 阅读 Fetch Promise 的正文

javascript - 迭代nodejs字符串行

node.js - 在 node.js 中模拟数据库?

node.js - 通过排序计算每个文档的平均值

javascript - 如何使用 Nodemailer 使用我的公司域发送电子邮件?