使用node.js监听2个不同的端口

时间:2013-02-26 20:40:30

标签: node.js sockets webserver

我目前正在使用Sockets.io与客户端进行通信,从端口发送JSON和诸如此类的东西。

这一切都运作良好,但我想要做的是同时在另一个端口上监听以创建一种用于测试目的的管理页面。

例如,该页面将有一个按钮,用于为在另一个端口上连接的所有客户端发送特定类型的JSON。

如果这不理想,那么对其他简单解决方案的任何帮助都会很棒。

1 个答案:

答案 0 :(得分:52)

只需创建另一个http实例并将其设置为侦听您感兴趣的端口。让我举个例子:

var http = require('http');

http.createServer(onRequest_a).listen(9011);
http.createServer(onRequest_b).listen(9012);

function onRequest_a (req, res) {
  res.write('Response from 9011\n');
  res.end();
}

function onRequest_b (req, res) {
  res.write('Response from 9012\n');
  res.end();
}

然后,您可以测试它(使用您的浏览器或curl):

$ curl http://localhost:9011
Response from 9011

$ curl http://localhost:9012
Response from 9012