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

使用smtp.js调用Gmail SMTP发送邮件失败求助

Gmail SMTP.js 邮件发送失败排查方案

核心问题排查点

1. 发件人地址不匹配

Gmail SMTP严格要求From地址必须与登录的Username完全一致,你当前代码中用用户输入的邮箱作为发件人,这会被Gmail拦截。必须将From设置为你的Gmail账号:

From: "mygmail@gmail.com", // 与Username保持一致

2. 缺少SMTP端口与加密配置

Gmail SMTP需要指定端口和加密方式,默认配置不完整会导致连接失败,补充以下参数:

Port: 465, // 推荐使用SSL端口,也可选择587(TLS端口)
SecureToken: true // 启用加密传输

3. 未捕获错误信息

你现在的代码只处理成功回调,完全看不到失败原因,必须添加错误捕获:

btn.addEventListener('click', ()=> {
    Email.send({
        // 你的配置项
    }).then(msg => alert("Email Sent"))
    .catch(err => {
        console.error("邮件发送失败:", err);
        alert("发送失败,请查看控制台信息");
    })
})

打开浏览器开发者工具(F12)的控制台,就能看到具体错误提示,这是定位问题的关键。

4. 应用专用密码有效性

  • 确认是在开启两步验证后生成的应用专用密码
  • 专用密码为16位无空格字符,检查是否输入错误
  • 生成时选择的应用类型为"邮件"或"其他(自定义名称)"

5. Gmail账户SMTP服务状态

登录你的Gmail账户,进入「设置」→「转发和POP/IMAP」,确保「IMAP访问」已开启(SMTP依赖此服务)。

重要安全提示

前端代码直接暴露Gmail账号和应用专用密码存在极高风险,任何人都能通过查看源码获取你的账户信息。建议改为后端处理邮件发送逻辑,前端仅提交表单数据到后端接口。

内容的提问来源于stack exchange,提问作者Rob Shepherd

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 21:10:08