如何将$ ajax转换为fetch

时间:2018-08-09 12:12:42

标签: jquery ajax reactjs fetch

我正在尝试在Fetch组件中使用React,但是不确定我是否理解语法。目前,我在Ajax中使用jQuery

handleDeleteProject(projectID) {
    $.ajax({
        url: './comments/delete',
        data: { productID: projectID },
        type: 'get',
        cache: true,
        success: function (response) {
            console.log("ok");
        },
    });
}

我想将其转换为Fetch。现在,我有类似的东西,但它不起作用。事件未通过服务器控制器中的断点:

fetch('./comments/delete', {
        method: 'get',
        body: "productID=" + encodeURIComponent(projectID)
    })
        .then(res => res.json())
        .then(res => {
            console.log('usunąłęm produkt:');
            console.log(res);
        })

1 个答案:

答案 0 :(得分:1)

您不想在请求的正文中发送productID,而是将其作为查询参数。您也不必指定方法,因为GET是默认方法。

fetch("/comments/delete?productID=" + encodeURIComponent(projectID))
  .then(res => res.json())
  .then(res => {
    console.log(res);
  })
  .catch(error => {
    console.error(error);
  });

关闭主题:您很可能不想通过GET请求删除资源。研究将其更改为DELETE请求。