【问题标题】:Calling the correct get route in Axios/Node在 Axios/Node 中调用正确的 get 路由
【发布时间】:2018-07-14 01:56:04
【问题描述】:

我正在学习 Axios、Mongoose 和 Express 并遇到以下问题。我正在研究一种模式,该模式需要在我需要时访问 2 个不同的获取请求。问题是,当我在参加时呼叫路线时,它仍然会执行带有信息的路线。如何正确定位后端的参加路线?

前端 //使用 findOne 查找用户信息

axios.get("/api/user/" + info); //info is a variable

//查找用户信息

axios.get("/api/user" + attending); //attending is a variable

后端的路由文件

router
  .route("/:info")
  .get(UserController.findOne);

router
  .route("/:attending")
  .get(UserController.findOneAndUpdate);

我也尝试过像下面这样更改路线,但它仍然到达信息路线而不是参加路线。

前端

 axios.get("/api/wmUser/getAttending"  + eventCode);

后端路由

  router
      .route("/:info")
      .get(UserController.findOne);

    router
      .route("/getAttending/:attending")
      .get(UserController.findOneAndUpdate);

【问题讨论】:

  • 您的两条路线都相同...只有您的参数正在更改,这就是为什么它调用唯一的info 路线...实际上它会调用代码中首先编写的路线如果你把 attending 路由放在第一位,它会先放……你需要改变路线以使它们不同。
  • 所以我尝试在后端添加 .route("/getAttending/:attending") 和 axios.get("/api/wmUser/getAttending" + eventCode);把这个移到另一个前面,还是不行
  • 您忘记在 getAttending 和 eventCode 之间使用 /....试试这个 axios.get("/api/wmUser/getAttending/" + eventCode)
  • 这就是答案!!谢谢它的工作..超级令人兴奋:-)

标签: node.js express mongoose axios


【解决方案1】:

您正在发送一个 axios GET 请求,该请求将针对

router
  .route("/:info")
  .get(UserController.findOne);

如果你想在后端打 PUT 路由,你需要在前端做一个 axios.put 请求。

来自前端的两个 axios 获取请求都会以不同的参数(即信息和参与)在后端获取。

【讨论】:

  • 对不起,我更正了这个问题,不应该有任何看跌期权,只有得到
猜你喜欢
  • 1970-01-01
  • 2017-03-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-08
  • 2022-09-23
  • 1970-01-01
  • 2019-02-18
相关资源
最近更新 更多