3

我正在用express和mongo制作一个rest api。我没有写出每个模型的 crud 操作,而是考虑编写一个通用的数据库服务,例如(在 db.coffee 中):

exports.findById = (model, req, res) ->
  model.findById req.params.id, (err, document)->
    if err
      throw err
    return document

因此,如果我想从用户 ID 中获取用户,我会调用(在 user.coffee 中):

exports.findById = res.send db.findById(model, req, res)

从 app.coffee 调用:

app.get '/user/:id', user.findById(req, res)

你觉得这个设计怎么样?这有标准设计吗?

4

1 回答 1

0

就在这里。

看看 mongoDb 的其余接口。 http://docs.mongodb.org/ecosystem/tools/http-interfaces/

此外,如果你从头开始做,你会很快意识到有很多边缘情况是你不想处理的。

以这种方式使用 mongoDB 的主要问题是,您的大量数据库数据将通过 Internet 以小部分形式传输到客户端中以进行大量简单请求。如果您要在服务器端执行大部分逻辑,您将不会遇到相同的网络延迟,并且您的应用程序可能会响应更快。

于 2014-01-19T10:24:30.897 回答