node.js - 运行简单的 Node js 服务器

标签 node.js

我正在我的 Mac 上运行一个简单的 Node js 服务器。我还安装了mamp。仅供引用。我可以正常访问 localhost:8888 并预览网页。但是,在我的 server.js 文件中,如果我将主机作为参数包含到 server.listen 函数中,如下所示

server.listen(127.0.0.1, 8888, function(){
        console.log('Server running');
})

我的终端出现以下错误。

Error: listen EADDRINUSE 127.0.0.1
    at Object._errnoException (util.js:992:11)
    at _exceptionWithHostPort (util.js:1014:20)
    at Server.setupListenHandle [as _listen2] (net.js:1338:19)
    at listenInCluster (net.js:1396:12)
    at Server.listen (net.js:1491:5)
    at Object.<anonymous> (/Users/username/Desktop/nodeServer/server.js:12:8)
    at Module._compile (module.js:652:30)
    at Object.Module._extensions..js (module.js:663:10)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
Users-Mac-Pro:nodeServer user$ 

如果我有

server.listen(8888, function(){
        console.log('Server running');
})

一切正常。这和我安装了mamp有什么关系吗?只是想了解为什么一个有效而另一个无效。

最佳答案

尝试将主机放在端口后面,如下所示

server.listen(8888, '127.0.0.1', function() {
console.log('Server running');
})

app.listen documentation

app.listen([port[, host[, backlog]]][, callback])

关于node.js - 运行简单的 Node js 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52119338/

相关文章:

javascript - 尝试读取 MYSQL 查询结果时无法读取未定义的属性 'length'

javascript - 需要一个使用dust.js或handlebars.js以及express3.x和node的两页示例

javascript - 在不更改数据库的情况下测试 POST 到 API 的策略

JavaScript 类引用

node.js - Perl 的 websocket 客户端

javascript - Promise 中的单元测试 pg 发射器得到

javascript - Mongoose - 无法读取未定义的属性 'push'

javascript - 使用map 进行并行请求,使用promise.all 进行for 循环,然后

node.js - EPERM : operation not permitted, mkdir'C :\Program Files\nodejs\node_modules\.登台

json - 如何在 sails-mongo 上进行非常大的查询?