【问题标题】:Getting request query parameters count获取请求查询参数计数
【发布时间】:2016-09-16 20:23:51
【问题描述】:

我的 API 服务器正在接受 GET 请求并解析参数。但我无法获得传递的参数数量。

var express = require('express'),
    https   = require('https');

var app = express();

app.get('/api', function(req, res) {
    console.log(req.query);
    console.log(req.query.name);
};

收到带参数的请求时,显示数据如下

{ id: '123', name: 'joel', age: '45' }
joel

但是如果我尝试获取传递的参数计数,例如

console.log(req.query).length;

它失败了。请帮我计算传递的参数数量。谢谢。

【问题讨论】:

    标签: node.js rest express


    【解决方案1】:

    你可以检查一下..这个代码有效..

    app.get('/api', function(req, res) {
        console.log(req.query);
        console.log(Object.keys(req.query).length);
    });
    

    输出:

    { id:'123',姓名:'joel',年龄:'45'}

    3

    【讨论】:

    • 感谢 abdulbarik 和 Supraj 的快速响应。这解决了我的问题。
    • 嗨,有一个疑问假设如果我们将 id 作为 '' 传递,那么我们如何进行空检查? if(req.query.id){}else{} 。这是正确的方法吗?
    • 你能告诉我你的查询参数吗
    【解决方案2】:

    您不能在对象类型上使用length,您可以通过Object 轻松找到它

    试试这个

    var obj={ id: '123', name: 'joel', age: '45' }
    
    console.log(Object.keys(obj).length);
    

    【讨论】:

      猜你喜欢
      • 2022-11-05
      • 1970-01-01
      • 1970-01-01
      • 2019-09-11
      • 2023-04-02
      • 2017-02-06
      • 2020-03-01
      • 1970-01-01
      • 2014-06-18
      相关资源
      最近更新 更多