You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Express框架中带查询字符串的路由无法正常工作的问题求助

Express框架中带查询字符串的路由无法正常工作的问题求助

大家好,我现在在Node.js的Express服务器上碰到了个头疼的路由问题,想请各位帮忙看看:

我本来想通过带查询字符串的URL(比如 url?var=value)访问特定路由,用req.query来获取参数,结果发现服务器完全没进入这个路由的处理函数,根本触发不了。

奇怪的是,如果我把路由改成用req.params的形式,就能正常工作,但我现在确实需要用查询字符串的方式传参数。我直接在浏览器里测试接口,开发者控制台里只显示一个空数组,完全得不到预期的结果。

为了排查问题,我已经把路由控制器简化到只剩一行console.log,但访问带查询字符串的URL时,控制台啥输出都没有,这说明路由根本没被命中。

给大家说下我目前的路由情况:

  1. 第一个路由 router.get("/:id", bienesPorOficina); 完全正常,用req.params.id能顺利拿到参数;
  2. 第二个路由我改成了router.get("/nombre/:cod", obtenerBien);,用req.params.cod的方式,访问localhost:3000/bienes/nombre/xx(xx是数字)也能正常工作;
  3. 第三个路由是我专门简化出来测试的router.get("/nom", obtenerBien2);,我想通过localhost:3000/bienes/nom?cod=xx这种带查询字符串的方式访问,但就是触发不了这个路由的处理函数,控制台完全没反应。

有没有大佬能帮我找找问题出在哪呀?

备注:内容来源于stack exchange,提问作者Hugo Jastrzebski

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 03:43:00