簡體   English   中英

Node.js Tcp服務器EACCESS

[英]Node.js Tcp server EACCESS

使用net在Windows機器上的Node.js上創建TCP服務器

var net = require('net');
var host = 'localhost';
var port = '7171';

net.createServer(function(socket) {
    console.log('CONNECTED - ' + socket.remoteAddress);
}).listen(host, port);

但是,即使我以Shift鍵單擊以admin身份運行節點控制台,我仍收到此EACCES錯誤。

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> (E:\Xampp\htdocs\tibiajs\server.js:7:4)
    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)

由於在Windows上,我通常不必處理此類特權問題,因此我不知道該怎么辦

您的參數落后了:

.listen(host, port);

應該

.listen(port, host);

另外,我可能會將端口號作為數字而不是字符串進行傳遞,但兩者似乎都起作用。

文件: http//nodejs.org/api/net.html#net_server_listen_port_host_backlog_callback

server.listen()帶端口,帶有可選主機。 簽名是listen(端口,[主機],[backlog],[callback])。 我認為這是您想要的:

var net = require('net');
var port = '7171';

net.createServer(function(socket) {
    console.log('CONNECTED - ' + socket.remoteAddress);
}).listen(port);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM