Node js端口已在使用中

时间:2019-04-11 09:45:46

标签: node.js process localhost port web-hosting

当我启动Web服务器时,节点抛出listen EADDRINUSE: address already in use :::3000,我尝试使用netstat并搜索3000端口(或其他端口,发生在任何端口上),但未找到任何内容。另外,任务管理器中没有节点进程,localhost:3000上也没有网页。我也尝试重新加载Windows,但没有任何改变。

2 个答案:

答案 0 :(得分:0)

假设您使用的是Windows 10,建议您尝试使用Resource Monitor。 “网络”选项卡上有一个名为“侦听端口”的视图,该视图应告诉您哪个进程正在使用端口3000

Resource Monitor

答案 1 :(得分:0)

您正在从代码中尝试将套接字模块绑定到端口3000:

var io = require('socket.io')(3000);
/* ... */
app.listen(3000);

以这种方式,当服务器尝试绑定自身时,端口已为in use

您必须创建HTTP服务器,然后在其上绑定socket.io模块:

const app = require('express')();
const server = require('http').createServer(app);
const io = require('socket.io')(server);
io.on('connection', () => { /* … */ });
server.listen(3000);

(摘自socket.io文档)