我在本地机器上启动并运行了一个 NodeJS 服务器,它正在监听端口 50000。 从另一台也在我本地机器上运行的服务器上,我需要向该服务器发出一个简单的 GET 请求,但我得到的只是一个 ECONNREFUSED 错误:
{ Error: connect ECONNREFUSED 127.0.0.1:50000
at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1106:14)
errno: 'ECONNREFUSED',
code: 'ECONNREFUSED',
syscall: 'connect',
address: '127.0.0.1',
port: 50000 }
我的请求如下所示,使用request
:
var options = {
url: "http://localhost:50000",
method: "GET"
}
request(options, function(error, response, body) {
if (error) {
console.log("[" + getDateTime() + "] Error connecting to localhost:");
console.log(error);
return;
}
// continue ...
我知道服务器已启动并正在运行并且端点已定义,因为我可以在 postman 或我的浏览器中向完全相同的 url 发出请求并获得响应,但不知何故不是在我的 NodeJS 代码中。
有人有想法吗?
最佳答案
可能的问题是其他一些进程已经在您尝试使用的同一端口上运行,请更改您的端口或终止您端口上的现有进程。要终止端口上的进程,您可以尝试:
对于苹果机:
sudo kill $(lsof -t -i:8000)
# or
sudo fuser -k -n tcp 8000
# or
fuser -k 8000/tcp
对于 Windows 检查 this
希望这有帮助:)
关于javascript - ECONNREFUSED 从 NodeJS 运行本地主机服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57691836/