使用Express和NodeJS构建REST API的最佳实践

时间:2014-10-31 22:59:20

标签: javascript node.js rest express websocket

这是一个独立的代理应用程序。我是Express和Node的新手,所以我想就如何构建这个应用程序的结构提出一些建议。

开始:

  • 我只有一个app.js文件,它是服务器并打开网络套接字。
  • 另一个(router.js)具有Router()和REST调用列表。

然而,这个应用程序将会有很多REST调用,并期望大量数据进入并请求输出。因此,只需在router.js中获取get,post等调用列表就可以非常快速地进行混乱。有没有更好的方法来设计这个应用程序?

1 个答案:

答案 0 :(得分:2)

为"包含"创建单独的文件路线。例如:

// stored as ./routes/abc.js
var middleware = require("../lib/middleware");
module.exports = {
  setup: function(app) {
    app.get("/abc/def", middleware.fn1, middleware.fn2, ..., this.def);
    app.get("/abc/[...]", this.[...]);
  },
  def: function(req, res) {
  },
  ...
}

然后在你的./routes/index.js中输入:

var abc = require("abc");
module.exports = function(app) {
  ...
  abc.setup(app);
  ...
};

然后最终当然在你的app.js中,你得到:

var express = require("express"),
    app = express();
require("routes")(app);
var port = process.env.PORT || 12345;
app.listen(port, function() {
  console.log('Listening on port %d', port);
});