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

Node/Express应用启动后出现ERR_CONNECTION_REFUSED问题求助

问题解决步骤

代码中的核心错误

你的代码里存在一个致命的无效调用,直接导致服务器监听异常:

app.listen(process.emitWarning.PORT);

process.emitWarning是Node.js的内置方法,用于触发警告信息,根本不是存储环境变量的对象。这行代码会让Express尝试监听一个undefined的端口,即便后续你又调用了正确的app.listen,这次无效调用已经干扰了服务器的正常启动流程。

修复后的完整代码

require('dotenv').config()
const express = require("express");
const app = express();

app.use('/places', require('./controllers/places'))

app.get("/", (req, res) => {
  res.send("Hello World!");
});

app.get('*', (req, res) => {
    res.status(404).send('<h1>404 Page </h1>')
})

// 先正确获取端口变量,再启动服务器
const PORT = process.env.PORT;

app.listen(PORT, () => {
  console.log(`app running on port ${PORT}`); // 用变量输出端口,避免硬编码
});

额外建议

  • 确保.env文件格式正确,去掉变量名和值之间的空格:PORT=3000(原内容的空格可能导致process.env.PORT获取到带空格的无效值)
  • 测试访问时优先使用http://localhost:3000或http://127.0.0.1:3000,避免域名解析异常的问题

内容的提问来源于stack exchange,提问作者Just Ben

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 18:46:11