javascript - 如何访问函数中的命名参数?

标签 javascript node.js rest express

我正在使用 Node JS 开发一个 REST Web 服务,以便与 Backbone JS 结合使用。 REST 方法之一是 GET /users/id/:id ,其中 :id 是用户的 ID 号。此方法将从数据库返回用户的详细信息。

我不明白的是如何将 :id 参数从 url 传递到响应处理程序。

我在 app.js 中定义了响应处理程序,如下所示:

app.get('users/id/:id',user.fetch(db));

这是 user.fetch 函数

exports.fetch = function(db){
    return function(req,res){

        var id = ;//how do I get the Id from the request?
        console.log("id: "+id);
        if(id !== null){
            peopleDb = db.get('people');
            peopleDb.find({"_id":id},function(e,docs){
                if(e){
                console.log(e);
                }else
                {
                    res.setHeader('Content-Type','application/json');
                    res.setHeader('Access-Control-Allow-Origin','*');
                    res.setHeader('Access-Control-Allow-Methods','GET,PUT,POST,DELETE');
                    res.writeHead(200);
                    res.end(JSON.stringify(docs));
                }
                });
        }
    }
}

最佳答案

return function(req,res)
   {
      var id = req.params.id;
      console.log("id: "+id);
      // ...  

这应该按预期工作。您可以阅读更多here

关于javascript - 如何访问函数中的命名参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19740475/

相关文章:

javascript - ruby on Rails - 无法运行javascript

javascript - 如何从json中获取额外的信息?

java - 如何使用 JAVA 或 C# 中的 Web 服务或 REST API 在 Microsoft Dynamics CRM 2016(版本 8)中创建案例?

javascript - 如何在 JavaScript 中使用此数组格式返回正确的值?

javascript - 如何在脚本中调用脚本

javascript - 解析服务器更新现有的用户字段?

java - Oracle 服务总线 11G REST api Java 连接到 OSB 时出现套接字问题

javascript - 如何将 EmberJS 前端与 NodeJS Express API 连接?

javascript - 有没有办法使用 Realm 数据库通过 getter 和 setter 修改属性值?

node.js - 将 Application Insights 与本地 Node.js 应用程序结合使用