2

我是nodejs的新手。从这个简单的程序开始学习。

var http=require("http");
var host="127.0.0.1";
var port=10016;

var server=http.createServer(function(request, responce) {
  console.log("Request recieved : " + request.url);
  responce.writeHead(200, {"Content-type":"text/plain"});
  responce.write("Hello World.! This is the start of my journey in nodejs");
  responce.end();
});

server.listen(host, port, function() {
  console.log("Listening "+ host +":" + port)});

当我使用“node server.js”运行程序时,我遇到了这个错误,虽然我上网了,但除了使用不同的端口之外,我找不到任何相关的解释。我尝试了尽可能多的。我是 Windows 用户。Mac 用户可能拥有具有 root 权限的 sudo,但问题并不相同。请帮忙。提前致谢。

我的错误是:C:\node>node firstserver.js

events.js:72
    throw er; // Unhandled 'error' event
          ^
Error: listen EACCES
at errnoException (net.js:904:11)
at Server._listen2 (net.js:1023:19)
at listen (net.js:1064:10)
at Server.listen (net.js:1132:5)
at Object.<anonymous> (C:\node\firstserver.js:12:8)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)

帮助表示赞赏。!

4

1 回答 1

2

只需交换server.listen代码中的参数 - 它应该这样写:

server.listen(port, host, function() {
  console.log("Listening "+ host +":" + port)});

port是第一个参数,因为第二个是可选的。引用文档

server.listen(端口,[主机名],[积压],[回调])

开始接受指定端口和主机名上的连接。如果省略主机名,服务器将接受定向到任何 IPv4 地址 (INADDR_ANY) 的连接。

于 2014-04-05T19:01:12.137 回答