req.query
req.param
假设一个客户机在请求中发送了一个 Android (Key,value)对... ... . . 应该使用哪一个?
[编辑]
假设 android 发送了一个 POST 请求-> 意图是向客户端发送(键,值) ,服务器应该根据服务器中的值执行一个数据库查询并返回 JSON 响应
看: : 在我引用的程序中的这个问题: : 查询结果的简单快捷程序
req.query是发送到服务器的查询字符串,例如 /page?测试 = 1,req.param是传递给处理程序的参数。
/page?
app.get('/user/:id', handler);到 /user/blah,req.param.id返回 blah;
app.get('/user/:id', handler);
/user/blah
req.param.id
blah
解析查询字符串后,req.query将返回一个 JS 对象。
/user? name = tom & age = 55 -req.query将生成 {name:"tom", age: "55"}
{name:"tom", age: "55"}
req.params将返回匹配路由中的参数。 如果你的路线是 /user/: id,并且你向 /用户/5-req.params发出请求将会产生 {id: "5"}
req.params
{id: "5"}
req.param是一个从请求中剥离参数的函数。所有这些都可以在 给你中找到。
更新
如果动词是 POST并且您使用的是 bodyParser,那么您应该能够在使用 req.body的函数中获得表单主体。这将是 POSTed 表单的解析后的 JS 版本。
POST
bodyParser
req.body
我建议使用如下
req.param('<param_name>')
Param (“”)的工作原理如下
Lookup is performed in the following order:
req.params req.body req.query
直接访问 req.body、 req.params 和 req.query 应该受到青睐,以便清晰明了——除非您真正接受来自每个对象的输入。
档号: http://expressjs.com/4x/api.html#req.param
传球
GET request to "/cars/honda"
返回一份本田汽车型号的清单
传递问题
GET request to "/car/honda?color=blue"
返回一份本田车型的清单, 但经过过滤后,只返回原色为蓝色的模型。
将这些过滤器添加到 URL 参数(/car/honda/color/blue)中是没有意义的,因为根据 REST,这将意味着我们希望获得关于颜色“ blue”的大量信息。因为我们真正想要的是一个经过过滤的本田车型列表,所以我们使用查询字符串来过滤返回的结果。
注意,查询字符串实际上只是{ key: value }对,格式稍有不同: ? key1 = value1 & key2 = value2 & key3 = value3。