Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js req.query仅检测URL中的单个参数_Node.js_Url_Express - Fatal编程技术网

Node.js req.query仅检测URL中的单个参数

Node.js req.query仅检测URL中的单个参数,node.js,url,express,Node.js,Url,Express,我有以下测试代码 app.use(function(req,res,next) { console.log("Params : " + req.params); console.log("Path : " + req.path); console.log("Query :" +req.query); for(var params in req.query) { console.log(params); } res.end("processed"); }); 每当我生成具

我有以下测试代码

app.use(function(req,res,next)
{

console.log("Params : " + req.params);

console.log("Path : " + req.path);

console.log("Query :" +req.query);


for(var params in req.query)
{

    console.log(params);
}

res.end("processed");

});
每当我生成具有以下url的请求时

http://127.0.0.1:8080/path/resource/myname?user=alanz&password=alpacasocks
我获得输出

Params : [object Object]
Path : /path/resource/name
Query :[object Object]
user
它似乎没有检测到第二个查询变量。使用curl生成请求

var data = req.query;
query将生成如下对象

{user:"alanz", password: "alpacasocks"}
您可以通过点符号提取用户名和密码

va username = data.user;      //print "alanz"
va password = data.password;  //print "alpacasocks"
谢谢

因为它是这样站着的:

// GET /users?user[name]=myname&user[password]=mypassword

req.query.user.name
// => "myname"

req.query.user.password
// => "mypassword
我想是这样的:

// GET /users?user[name]=myname&user[password]=mypassword

req.query.user.name
// => "myname"

req.query.user.password
// => "mypassword
因为您查询的是同一对象的两个值,而不是两个不同的对象。也许你只是想用它作为参数,就像在


PS:在任何情况下,我都不会在任何真实场景中这样对待密码。

userparam的值是多少?你试过使用浏览器而不是curl吗?我没有试过浏览器,因为我使用的是cloud9(不确定它是否允许公共连接),但如果有机会,我会尝试的。我尝试了下面的解决方案,但无法使其工作,但我开始怀疑这是curl而不是nodeTry的问题,以逃避
&
。试着打印参数的值,例如,
req.query[params]
。回到家,用我的浏览器试了一下,效果很好。这是cloud9开发环境中的curl问题