1

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

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

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

4

1 回答 1

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 上侦听一条消息,并通过远程登录到 8082 的 REPL。

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

于 2013-08-07T08:36:47.793 回答