如何使用提取将变量发送到GET请求?

时间:2019-05-21 06:21:00

标签: javascript node.js get fetch

我在使用fetch发送ID时遇到问题,该ID随后发送到执行功能的后端中的get请求。

此功能的目的是从JSON文件中删除元素,该JSON文件将输入到前端的输入框中。

但是,执行此操作时,出现错误,提示找不到该功能的路由:
GET http://localhost:3000/delete 404(未找到)

这是/delete路线的代码:

app.get('/delete/:id', function (req, res) {

    var id = req.params.id;

    for (var i = 0; i < tasksArray.length; i++) {
        if(tasksArray[i].id == id) {
            tasksArray.splice(i, 1);
        }
    }
    res.json(tasksArray);
    var json = JSON.stringify(tasksArray);
    fs.writeFileSync("toDoList.json", json);

});

这是使用fetch的前端代码:

function deleteElement() {

      var id = document.getElementById("deleteId").value;


      var url = "http://localhost:3000/delete";

        fetch(url, {
            method: 'GET',
            url: `/delete/${id}`,
            headers: {
                'Content-Type': 'application/json'
            }
        });
}

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您未在网址中使用ID。

function deleteElement() {
  var id = document.getElementById("deleteId").value;
  var url = "http://localhost:3000/delete/" + id;
  fetch(url, {
    // removed url as it's defined in fetch's first arguments.
    method: 'GET',
    headers: {
      'Content-Type': 'application/json'
    }
  });


}