【问题标题】:ExpressJs: Wrong api endpoint triggeredExpressJs:触发了错误的 api 端点
【发布时间】:2021-02-08 17:51:15
【问题描述】:

我有这个 api 请求:

http://localhost:5000/api/courses/get_public_course_data_by_id?course_id=454545

我有这两条 ExpressJs 路线:

router.get("/:id", (req, res) => {});
router.get("/get_public_course_data_by_id", (req, res) => {});

出于某种原因,触发的总是第一个端点,而不是第二个。

【问题讨论】:

  • Express 如何知道路由中的api/courses/ 部分?
  • @Christian 已在 server.js 文件中处理

标签: javascript node.js express


【解决方案1】:

需要在动态路由前添加静态路由

像这样:

router.get("/get_public_course_data_by_id", (req, res) => {}); // 1st this
router.get("/:id", (req, res) => {}); // then this

原因是,节点路由器假设get_public_course_data_by_id id 并相应地处理请求,而get_public_course_data_by_id 永远不会执行。

【讨论】:

    猜你喜欢
    • 2020-01-05
    • 1970-01-01
    • 2019-04-15
    • 1970-01-01
    • 2021-10-14
    • 2021-09-10
    • 2019-09-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多