ExpressJS中的Request.query和Request.param

Express中req.queryreq.param主要区别

  • 两者如何彼此不同
  • 在什么情况下何时使用

假设客户端在请求中发送Android(Key,value)对,那么使用哪一个?

[编辑]

假设android发送POST请求 – >意图是发送(Key,Value)给客户端,服务器应该根据服务器中的值执行数据库查询并返回JSON响应

看看::在这个问题上,我引用的程序:: 简单的Express程序查询结果

查询stringparsing后, req.query将返回一个JS对象。

/ user?name = tom&age = 55req.query会产生{name:"tom", age: "55"}

req.params将返回匹配路由中的参数。 如果你的路由是/ user /:id,并且你向/ user / 5发出了一个请求 – req.params会产生{id: "5"}

req.param是一个从请求中剥离参数的函数。 所有这一切都可以在这里find。

UPDATE

如果动词是一个POST并且您正在使用bodyParser ,那么您应该能够在req.body获得表单主体的function。 这将是parsing的POST版本的JS版本。

我会build议使用以下

 req.param('<param_name>') 

req.param(“”)的作用如下

查找按以下顺序执行:

 req.params req.body req.query 

直接访问req.body,req.params和req.query应该更加清晰 – 除非您确实接受来自每个对象的input。

参考: http : //expressjs.com/4x/api.html#req.param

req.query是发送到服务器的查询string,example /page? testing= 1req.param是传递给处理程序的参数。

app.get('/user/:id', handler); ,去/user/blahreq.param.id将返回blah ;