【发布时间】:2020-08-11 07:31:05
【问题描述】:
//code const express = require('express') const app = express() const server = require('http').Server(app) const io = require('socket.io')(server) const { v4: uuidv4 } = require('uuid')
app.set('view engine', 'ejs') app.use(express.static('public'))
app.get('/',(req, res) =>{ res.redirect(/${uuidv4()}) })
app.get('/:room', (req, res) =>{ res.render('room', {roomId: req.params.room }) })
io.on('connection',socket =>{ socket.on('join room',(roomId, userId) =>{ console.log(roomId,userId) }) })
server.listen(3000)
// 错误
[nodemon] 2.0.4 [nodemon] 随时重启,输入rs [nodemon] 观看路径:. [nodemon] 看扩展:js,mjs,json [nodemon] 启动节点 server.js events.js:292 throw er; // 未处理 “错误”事件^
错误:监听 EADDRINUSE:地址已在使用 :::3000 at Server.setupListenHandle [as _listen2] (net.js:1313:16) at ListenInCluster (net.js:1361:12) 在 Server.listen (net.js:1447:7) 在 目的。 (I:\Volume E\zoom-clone\server.js:25:8) 在 Module._compile (内部/模块/cjs/loader.js:1138:30)在 Object.Module._extensions..js (internal/modules/cjs/loader.js:1158:10) 在 Module.load (internal/modules/cjs/loader.js:986:32) 在 Function.Module._load (internal/modules/cjs/loader.js:879:14) 在 Function.executeUserEntryPoint [作为 runMain] (内部/模块/run_main.js:71:12)在 internal/main/run_main_module.js:17:47 在服务器上发出“错误”事件 实例位于:在 emitErrorNT (net.js:1340:8) 处 processTicksAndRejections (internal/process/task_queues.js:84:21) { 代码:'EADDRINUSE',errno:'EADDRINUSE',系统调用:'listen',地址: '::', port: 3000 } [nodemon] 应用程序崩溃 - 等待文件更改 在开始之前...
【问题讨论】:
-
这只是意味着其他东西已经在监听端口 3000,因此你不能为此使用
server.listen(3000)。尝试将 3000 更改为应该可以使用的其他数字。或者查看刚才提到的@AnuragSrivastava 的答案。 -
如果运行的内容无关紧要,那么我建议终止在此端口上运行的服务。