Mongodb返回一个空数组

Mongodb返回一个空数组,mongodb,express,mongoose,ejs,Mongodb,Express,Mongoose,Ejs,我正在尝试进行范围查询,并在ejs视图中显示数据 EJS视图“historicos.EJS” 这是我的路由器文件 router.get('/historicos', hiController.getPagehis); router.get('/historicos/buscar', hiController.getHis); 如果我手动编写ini和fin来进行查询(使用这种格式yyy-MM-DDThh:MM),我的意思是没有req.body.ini和req.body.final,它工作得很好,

我正在尝试进行范围查询,并在ejs视图中显示数据

EJS视图“historicos.EJS”

这是我的路由器文件

router.get('/historicos', hiController.getPagehis);
router.get('/historicos/buscar', hiController.getHis);
如果我手动编写ini和fin来进行查询(使用这种格式yyy-MM-DDThh:MM),我的意思是没有req.body.ini和req.body.final,它工作得很好,但是当我从视图请求信息时,我没有定义这个字段


我能做些什么来解决这个问题?

问题是表单和请求,通常在表单中添加method=“get”,并使用以下内容更新控制器:

var Url = require('url');

...

queryparams = Url.parse(req.url,true).query;
    ini = queryparams.ini;
    fi = queryparams.fi;
... make the query to mongo db

使用此代码可以获取url中传递的输入文件中的值,您已经在服务器上验证了
req.body.ini
req.body.final
的格式与
YYYY-MM-DDThh:MM
相同,并且没有编码或转义?是的,正如我所说的,如果我以这种格式编写字符串,它会很好地验证这种格式的字符串是否有效,但不会验证param值是否为那种格式。你有没有调试或记录传入的值?是的,我的朋友,我用console.log(变量)检查传递给变量的内容,它说服务器代码可能没问题。您是否已检查浏览器中的请求以查看其是否包含参数?
router.get('/historicos', hiController.getPagehis);
router.get('/historicos/buscar', hiController.getHis);
var Url = require('url');

...

queryparams = Url.parse(req.url,true).query;
    ini = queryparams.ini;
    fi = queryparams.fi;
... make the query to mongo db