You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Replit中Nodemailer登录认证错误求助(已禁用2FA及低安全应用)

Nodemailer 发送Gmail认证失败问题排查

首先修正代码配置错误

你的代码里犯了一个关键错误:Nodemailer 连接Gmail时,账号密码需要放在auth对象中,而不是直接写在根配置里。正确代码如下:

const transporter = nodemailer.createTransport({
    service: 'gmail', 
    auth: {
        user: '你的邮箱地址',
        pass: '你的密码/应用专用密码'
    }
});

const mailOptions = {
    from: 'SENDER-EMAIL',
    to: 'RECIPIENT-EMAIL',
    subject: 'SUBJECT',
    text: 'EMAIL BODY',
};
transporter.sendMail(mailOptions,(err,res)=>{
    if(err){
        console.log(err);
    }
    else {
        console.log('The email was sent successfully');
    }
});

若修正后仍报错,排查以下原因

  • 低安全应用访问未生效或已被Google淘汰
    Google目前正在逐步淘汰「低安全应用访问」功能,即使你手动开启,部分账号也可能无法生效。建议重新开启双重认证(2FA),然后生成应用专用密码,用这个密码替代原账号密码填入代码,这是当前Gmail推荐的第三方应用授权方式。

  • Replit服务器IP被Google拦截
    Google会对陌生IP的登录请求进行拦截。登录你的Gmail账号,查看「最近安全活动」,如果有来自Replit的可疑登录记录,标记为「本人操作」后再重试发送邮件。

  • 账号安全限制未解除
    部分账号可能开启了登录地域限制、登录验证码验证等额外安全设置,这些设置会覆盖低安全应用的权限,需要在Google账号安全中心调整对应设置。

内容的提问来源于stack exchange,提问作者Mason Walker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 21:30:49