使用axio提交删除请求时出现错误405

时间:2020-02-09 13:27:07

标签: reactjs axios http-delete

我有一个经过测试并可以与POSTMAN一起使用的DELETE请求。

localhost:5000/api/flavour/5e3feb54e896ab7c00437f0a.

我什至尝试在axio层中为第二个参数传递参数。但它变成了(我会得到404) 本地主机:5000 / api / flavor /?id = 5e3feb54e896ab7c00437f0a。

但是,如何在axio的UI端实现此功能?我已经尝试对网址进行硬编码以进行测试,但是无法正常工作。

这是我的axio代码。 (目前继续获得405)

DeleteFlavour: async (id) => {
    console.log(id);
    let res = await axios.delete('/api/flavour/{id}');
    console.log(res);
    return res.data || [];
  }

这是我的路线

app.delete(`/api/flavour/:id`, async (req, res) => {
    console.log(req.params);
    const {id} = req.params;

    let flavour = await Flavour.findByIdAndDelete(id);

    return res.status(202).send({
      error: false,
      flavour
    })
  })

1 个答案:

答案 0 :(得分:2)

我认为您输入错误导致网址错误。你有:

let res = await axios.delete('/api/flavour/{id}');

可能应该是:

let res = await axios.delete('/api/flavour/' + id);

let res = await axios.delete(`/api/flavour/${id}`);