2013-08-27 42 views
0
var server = net.createServer(function(c) { 
    ... 
}) 
server.getConnections(function(err, count){ 
    console.log("count", count); 
}) 

我收到以下錯誤消息。getConnections方法node.js未定義tcp服務器

Object #<Server> has no method 'getConnections' 
  1. 如何使用TCP服務器的getConnections

我使用節點版本v0.10.16

+0

如果你只是計數後,您可以用'server.connections' – dc5

回答

1

我不知道到底爲什麼你的代碼不能正常工作。雖然在連接回調之外請求getConnections並不是必需的,但它在我的測試中起作用。根據文檔已棄用server.connections,因此不鼓勵使用。

使用telnet localhost 1337,下面仿真了一個非常差的回聲套接字,並顯示當前的連接數。在我的測試工作下面的代碼:

var server = require('net').createServer(); 

server.on('connection', function (socket) { 

    socket.on('data', function(data) { 
     socket.write(data); 
    }); 
    server.getConnections(function(err, count) { 
     console.log("Connections: " + count); 
    }); 
}); 
server.listen(1337); 
+0

OMG。如果我在命令行中運行代碼,比如node.js,那麼每件事情都是完美的。如果我在nodeclipse中運行相同的代碼即時獲取此錯誤。如何解決這個問題? – rajkamal

+0

這確實改變了你的問題的性質。 :(。我對nodeclipse並不熟悉,我使用WebStorm開發所有的節點。 – WiredPrairie

+0

+1 for your time .. – rajkamal

0

你可以嘗試這樣的:

var net = require('net'); 
var events = require('events'); 
var eventEmitter = new events.EventEmitter(); 

var server = net.createServer(function(c) { 
    ...`enter code here` 
eventEmitter.emit('event1'); 

}) 


eventEmitter.on('event1', function(){ 
    server.getConnections(function(err, count){ 
     console.log("count", count); 
    }) 
}); 
+1

歡迎來到Stack Exchange,Catalin。你可以通過一些解釋來擴展這個答案, '爲什麼?爲什麼?只是代碼本身並不是非常有用的答案。謝謝。 –