繁体   English   中英

错误:监听 EADDRINUSE:地址已在使用中:::3000

[英]Error: listen EADDRINUSE: address already in use :::3000

大家好,我是新来的,正在尝试学习 Udemy 上关于将 Node 应用程序连接到数据库的课程,但遇到一个问题,即无法使用 MongoDB 数据库实际运行服务器。 代码在最后。

错误

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 )

在第 10 行,您已经调用app.listen(3000) ,然后(行被屏幕截图隐藏)在文件底部再次调用app.listen(3000) 这就是原因,仅将其保留在第 10 行。 如果您多次需要此实例,请考虑将其分配给一个常量。 例如:

const socket_id = app.listen(3000)

此代码适用于 linux ubuntu 用户

killall -9 node

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM