具有多个端点的Node.js应用程序

时间:2013-08-07 08:23:17

标签: javascript node.js web-applications express

我有一个node.js应用程序,它只是一个库。不,我想为该应用程序提供不同的端点。

我想通过快递网页 我想有一个管理命令行 (并且将来可能是休息Api。)

那么如何构建一个node.js应用程序来公开网站和管理命令行界面。因此,管理员可以同时通过命令行与该应用程序进行交互。关键是要连接到正在运行的进程并与之交互(生产保存)。

1 个答案:

答案 0 :(得分:1)

由于节点是异步的,因此同时监听多个端点没有问题。该程序的结构基本上只是创建两个服务器(HTTP / Express / Socket / ...),单独配置,并在两者上调用listen()。作为一个快速而肮脏的例子;

var http = require('http');
var net  = require('net');
var repl = require('repl');

http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World!\n');
}).listen(8081);

net.createServer(function (socket) {
  repl.start({
    prompt: "node> ", input: socket, output: socket
  }).on('exit', function() {
    socket.end();
  });
}).listen(8082);

...将通过消息侦听端口8081 / HTTP,并通过telnet侦听到8082.

您可以自然地选择重用方法/配置,但这是您的选择,而不是Node强制执行的任何操作。