我有一个由多个服务器(用Java编写)组成的设置,需要与中央服务器通信,每隔一段时间发布一次状态更新。这些状态更新将被写入数据库,可能是MongoDB / Mongoose,它将由Web端通过REST处理。
我一直在关注Restify和Express作为解决这个问题的两种方法。该网站将查询数据库以及REST api。
我该如何处理?我应该使用Restify和Express来创建一个带有API的网站吗?我应该用铁路吗?感谢。
答案 0 :(得分:4)
使用像Railway这样的复杂框架是没有意义的,它构建在Express之上,并试图类似于Ruby on Rails。
你应该选择Express或Restify,而不是两者。
我会选择Express over Restify,因为代码记录很好,而且库更成熟,使用频繁。你可以找到一些有关如何使用Express制作此类应用程序的有用教程,而且API很棒:
var express = require('express')
, app = express.createServer();
var users = [{ name: 'tj' }];
app.all('/user/:id/:op?', function(req, res, next){
req.user = users[req.params.id];
if (req.user) {
next();
} else {
next(new Error('cannot find user ' + req.params.id));
}
});
app.get('/user/:id', function(req, res){
res.send('viewing ' + req.user.name);
});
app.get('/user/:id/edit', function(req, res){
res.send('editing ' + req.user.name);
});
app.put('/user/:id', function(req, res){
res.send('updating ' + req.user.name);
});
app.get('*', function(req, res){
res.send('what???', 404);
});
app.listen(3000);
答案 1 :(得分:2)
我个人认为express.js能够满足我的需求,因为它的路由功能很棒。查看http://expressjs.com/guide.html#routing。它可以完成RESTful api的工作并且非常快。
还:Node-PerfectAPI vs Restify.js vs ExpressJS vs Node-APIServer