Express-将.find与req.query一起使用将返回null

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Express-将.find与req.query一起使用将返回null相关的知识,希望对你有一定的参考价值。

我正在尝试使用mongo和express进行搜索。我遇到一个奇怪的问题,如果我将查询字符串中的值传递给.find,它将返回null。但是,如果我通过相同的值进行硬编码,则可以正常工作。

例如

这很好用:

const property = await Property.find( county: 'kildare');

这不起作用:

 const property = await Property.find( county: req.query.county);

如果在以下路线req.query.county上击中方法时,如果我console.log http://localhost:7777/property/search?county=kildare,我将得到kildare的值。

我真的不明白问题是什么。

答案

尝试修剪查询字符串以避免空格或任何不需要的字符:

const property = await Property.find( county: req.query.county.trim());

以上是关于Express-将.find与req.query一起使用将返回null的主要内容,如果未能解决你的问题,请参考以下文章

express 4.x req.query(get方式) req.body(post方式) 接收浏览器发送过来的数据

如何记录 express.js POST 参数 [重复]

将 Jquery 数据发布到 Express

在Express中get,post获取表单请求数据

NodeJS收发GET和POST请求

nodejs之express -- 2