Node.js IMAP连接报错ECONNREFUSED,无法修改端口求助
解决IMAP配置端口不生效、连接本地127.0.0.1:143被拒绝的问题
从报错信息能看出,代码里明明指定了imap.gmail.com和993端口,但程序却尝试连接本地127.0.0.1的143端口(IMAP非SSL默认端口),根源是你的配置没有被IMAP实例正确读取,核心问题出在配置对象的创建方式上。
核心修复步骤
你错误地用new Imap()来生成配置对象,正确做法是直接定义普通对象,再传入IMAP构造函数:
// 修正:直接定义配置对象,不要用new Imap() var imapConfig = { user: "xxxxxxxxxxxxxxxx", password: "xxxxxxxxx", server: "imap.gmail.com", port: 993, tls: true, debug: console.log, }; clog(levels.NORMAL, "Email connection"); // 用正确的配置对象初始化IMAP实例 const imap = new Imap(imapConfig);
额外检查项
- 确认Gmail IMAP权限开启:登录Google账号,进入「账户设置」→「安全性」,找到「IMAP访问」并开启;如果账号开启了两步验证,需要生成应用专用密码替代普通登录密码。
- 排查配置覆盖问题:检查代码后续是否修改了
imapConfig的server或port属性,或是调用IMAP实例的其他方法强制修改了连接参数。
内容的提问来源于stack exchange,提问作者Neymar Liang
相关产品推荐
相关产品推荐

