如何自动创build一个REST API node.js / MongoDB

我正在运行一个处理REST API调用的node.js服务器。 这些调用的响应将是一个或MongoDB对象(JSON)的列表。

我已经阅读了关于参数和如何处理它们。 但有没有办法自动做到这一点?

可以说我有一个用户集合:

name: String, hobby: String, age: Number 

现在我想要得到年龄为18的所有用户的列表。

我知道我可以像这样恢复参数:

 url: http://localhost:3000/user?age=18&hobby=something var app = express(); app.get('/user', function (req,res) { var age=req.query.age; var hobby=req.query.hobby; mondodbUser.find(...); } 

但假设用户有10个不同的属性,我有15个不同的集合。 我不能dynamic地做这个吗? 所以我不必恢复每一个可能的参数?

我想能够使用所有给定的参数来searchMongoDB。

我希望我能够expression自己:D谢谢!

因为req.query在查询string被parsing后返回一个JS对象,其中的对象将具有在查询string中定义的属性,例如:

/user?name=andrew&age=22

req.query将返回对象{ name: "andrew", age: "22" }

因此只要对象中的属性与底层集合文档模式匹配,就可以将其用作find()方法参数。

你可以这样做:

 app.get('/user', function (req, res) { User.find(req.query, function (err, users){ ... }); }