【问题标题】:Unable to read params from request无法从请求中读取参数
【发布时间】:2015-09-01 12:31:13
【问题描述】:

我的角度:

$http.get('/api/orders', {
        params: {
            userId:userId,
            token:token
        }
     })
     .success(function (data,status) {

     });

我的节点:

  router.route('/')
        //GET all Orders
        .get(function(req, res, next) 
            {
           console.log(req);
          });

我的结果:

.......
.
.
params:{},
query :{token:'mytoken',userId:'myUserId'}
.
.
......

为什么我的params 是空白的,而query 是用参数填充的。我想要params 中的数据。我错在哪里?

【问题讨论】:

    标签: angularjs node.js object request


    【解决方案1】:

    通过将 params 对象设置为 agular 中的 $http.get 方法,您只需将数据添加到查询字符串。正如here所写:

    params – {Object.<string|Object>} – Map of strings or objects which will be serialized with the paramSerializer and appended as GET parameters.
    

    因此,它们出现在服务器端的 req.query 对象中是合乎逻辑的。为了在 req.param 对象中获取此数据,您必须将其映射到路由中。更改路线:

    app.get('/api/orders/:userId/:token', ...);
    

    和角度请求:

    $http.get('/api/orders/' + userId + '/' + token })
         .success(function (data,status) {
    
         });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-15
      • 2019-04-01
      相关资源
      最近更新 更多