ExpressJS中的Request.query和Request.param
Express中req.query
和req.param
主要区别
- 两者如何彼此不同
- 在什么情况下何时使用
假设客户端在请求中发送Android(Key,value)对,那么使用哪一个?
[编辑]
假设android发送POST请求 – >意图是发送(Key,Value)给客户端,服务器应该根据服务器中的值执行数据库查询并返回JSON响应
看看::在这个问题上,我引用的程序:: 简单的Express程序查询结果
查询stringparsing后, req.query
将返回一个JS对象。
/ user?name = tom&age = 55 – req.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= 1 , req.param
是传递给处理程序的参数。
app.get('/user/:id', handler);
,去/user/blah
, req.param.id
将返回blah
;