jQuery ajax()DELETE方法?

时间:2016-09-23 08:28:56

标签: jquery

我可以通过传递我要删除的项目的ID来删除json文件中的项目吗?我得到了:

  

jquery-2.2.4.min.js:DELETE http://example.com/comments.json1 405   (不允许的方法)

这就是我所拥有的:

jQuery.ajax({
  method: 'DELETE',
  url: comments.json1
});

// comments.json
[
  {
    "id": 1,
    "body": "abc",
  },
  {
    "id": 2,
    "body": "xyz",
  }
]

2 个答案:

答案 0 :(得分:0)

DELETE-verb只是告诉您的API应删除资源。动词用于区分共享相同端点的方法。

示例:

更新资源:     资源/ ID

删除资源:     资源/ ID

由于上面的端点都是相同的,我们需要一种方法来知道请求中的哪一个到端点。这是我们使用动词的地方。

更新资源:     PUT / PATCH资源/ id

删除资源:     删除资源/ ID

这意味着关键字本身没有做任何事情,它只是解释了应该使用哪个端点。

405表示资源没有与该动词对应的路由。

Further reading

答案 1 :(得分:0)

您可以采取更简单的方法。只需使用$_POST$_GET即可。特别是因为你需要从json数组中删除一个项目(数组元素,按照提供的代码)。您应该让服务器端脚本处理验证和删除。

基于浏览器的Web应用程序环境中不需要PUTDELETE请求(此外,现代浏览器甚至不支持它们,它们的实现也已从HTML5规范!!! ),对RESTful API更有用/更有用。