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

ExpressJS新增路由返回Cannot GET错误 Postman请求失败如何排查

ExpressJS新增路由返回404错误的常见原因

根据你提供的代码场景,可能的问题点如下:

  • 路由注册顺序错误:Express会按代码书写顺序依次匹配路由,如果你的用户路由模块中,存在/:id这类带动态参数的路由,且书写位置在/abc、/user_stats这类固定路径路由之前,请求会优先匹配到动态参数路由,若该动态路由未对应GET方法处理逻辑,就会返回404。请将固定路径路由调整到动态参数路由之前。
  • 路由前缀重复:检查server.js中挂载用户路由的代码,如果已经通过app.use('/api/users', userRouter)将用户路由模块统一挂载到/api/users前缀下,那么在userRoutes.js中定义子路由时不需要再加/api/users前缀,直接写/abc、/user_stats即可。如果重复写了前缀,实际可访问路径就会变成/api/users/api/users/abc,和你请求的路径不符。
  • HTTP请求方法不匹配:检查userRoutes.js中对应路由定义的请求方法,如果路由是通过router.post()定义的,而你用Postman发的是GET请求,就会返回Cannot GET错误,需要确保请求方法和路由定义的方法一致。
  • 服务未重启:修改路由代码后如果没有重启Express服务,运行中的服务依旧使用旧的路由规则,新增的路由不会生效,重启服务即可验证。
  • 路由模块导出/引入错误:检查userRoutes.js是否正确导出了路由实例,server.js中引入用户路由模块的路径是否正确,如果引入的模块不对,新增的路由自然不会生效。

内容的提问来源于stack exchange,提问作者Oge Obubu

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 14:09:03