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

NodeJS/Express服务启动正常但请求报ERR_CONNECTION_REFUSED错误如何解决

问题排查与解决方案

直接错误修复

cookieParser中间件未调用是当前请求无响应的核心原因,你代码中的中间件注册写法错误:
原错误代码:

app.use(cookieParser);

修正为:

app.use(cookieParser());

cookieParser是工厂函数,必须调用后返回的中间件函数才能传入app.use,否则会导致所有请求卡在该中间件环节,不会继续执行后续路由逻辑,也就不会返回任何响应,直接表现为浏览器无限加载、请求超时或ERR_CONNECTION_LOST报错。

其他问题排查步骤

如果修正上述代码后问题仍然存在,可按以下顺序排查:

  • 确认3002端口无占用
    Windows系统执行命令:netstat -ano | findstr 3002
    Linux/macOS系统执行命令:lsof -i:3002
    如果有其他进程占用该端口,可终止对应进程或修改代码中的PORT变量为其他未被占用的端口。
  • 明确服务绑定地址
    可修改app.listen逻辑,显式指定绑定地址,避免默认绑定异常:
    app.listen(PORT, '0.0.0.0', () => {
      console.log("Server running on port: " + PORT);
    });
    
  • 排查数据库连接影响
    暂时注释MongoDB连接相关代码,仅保留/test测试接口验证服务是否能正常响应,排除数据库连接异常导致的服务阻塞。
  • 验证服务连通性
    服务启动后先绕过前端,直接在终端执行curl http://localhost:3002/test,或者在浏览器直接访问该地址,确认是否能正常返回works响应。
  • 调整nodemon启动参数
    部分环境下nodemon的-L(legacy监听模式)可能导致启动异常,可暂时修改package.json的启动命令为nodemon server.js测试。

小提示:你代码中MongoDB连接成功的日志Conncted to DB为拼写错误,可修改为Connected to DB,不影响服务正常运行。

内容的提问来源于stack exchange,提问作者Caio Ishikawa

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 01:15:02