大家好,我是新来的,试图按照Udemy上的有关将Node应用程序连接到数据库的课程,但是遇到问题无法使用mangodb数据库正确运行服务器。代码在最后。
错误
Error: listen EADDRINUSE: address already in use :::3000
at Server.setupListenHandle [as _listen2] (net.js:1317:16)
at listenInCluster (net.js:1365:12)
at Server.listen (net.js:1451:7)
at Function.listen (C:\Users\Elev\Desktop\javapamokos\todolist\todolistonSteroids\node_modules\express\lib\application.js:618:24)
at C:\Users\Elev\Desktop\javapamokos\todolist\todolistonSteroids\server.js:10:5
at C:\Users\Elev\Desktop\javapamokos\todolist\todolistonSteroids\node_modules\mongodb\lib\utils.js:674:5
at C:\Users\Elev\Desktop\javapamokos\todolist\todolistonSteroids\node_modules\mongodb\lib\mongo_client.js:225:7
at connectCallback (C:\Users\Elev\Desktop\javapamokos\todolist\todolistonSteroids\node_modules\mongodb\lib\operations\connect.js:366:5)
at C:\Users\Elev\Desktop\javapamokos\todolist\todolistonSteroids\node_modules\mongodb\lib\operations\connect.js:602:5
at connectHandler (C:\Users\Elev\Desktop\javapamokos\todolist\todolistonSteroids\node_modules\mongodb\lib\core\sdam\topology.js:297:43)
Emitted 'error' event on Server instance at:
at emitErrorNT (net.js:1344:8)
at processTicksAndRejections (internal/process/task_queues.js:80:21) {
code: 'EADDRINUSE',
errno: -4091,
syscall: 'listen',
address: '::',
port: 3000
}
代码第1部分(https://prnt.sc/v8rnqm) 代码第2部分(https://prnt.sc/v8rofm)
谢谢你们。
答案 0 :(得分:1)
在第10行,您已经呼叫app.listen(3000)
然后(再次在屏幕底部隐藏行)在您再次调用app.listen(3000)
的文件的底部。这就是原因,仅将其保留在第10行。如果您多次需要此实例,请考虑将其分配给一个常量。例如:
const socket_id = app.listen(3000)