【发布时间】:2014-04-08 05:31:11
【问题描述】:
expressjs 是否可以有多个路由调用同一个资源,类似这样:
app.get('/users/:user_id', users.getOne)
app.get('/users/:username', users.getOne)
我希望能够调用 users.getOne 获取请求中使用的任何参数(:user_id 或 :username)。
在 users.getOne 函数中,我如何确定使用了哪一个并根据它构建我的查询?
exports.getOne = function(req, res){
var queryParams = ? // I need help here
Users
.find(queryParams)
...
谢谢!
可能相关:express.js - single routing handler for multiple routes in a single line
【问题讨论】:
-
如果有人选择的用户名与您的某个用户 ID 冲突怎么办?
-
用户名限制为 16 个字符。而 user_id 是 mongoDB 生成的 hash 希望是 24 个字符。
标签: node.js rest express mongoose