4

JQuery 1.8 或 1.7.2 是否支持 DELETE ajax 请求中的数据参数,例如

$.ajax({
    url: '/config/delete',
    type: 'DELETE',
    data: {id:'blah'}
}

如果没有,解决方法可能是

$.ajax({
    url: '/config/delete?id=blah',
    type: 'DELETE'
}

我的问题:

  1. 我见过有人说他们明确不想使用第二种方法,但为什么呢?有什么安全原因吗?

  2. 如果第一种方法不起作用而第二种方法不好,那么这里有什么替代方法?发送带有方法参数的 POST 请求,例如 data:{... method:'delete'}?

4

1 回答 1

0

DELETEHTTP 请求方法没有body携带一些数据。

因此,无论您使用哪种方法,id=blahor{id:'blah'}都不会交付。
这不是由于 jQuery 版本,而是由于 HTTP 方法本身的性质。

DELETE方法的用途是删除访问的资源。
该文件/config/delete不会被执行,而是从服务器中删除。

另外,这种方法在 HTML 表单中是不允许的……所以我不会通过 Ajax 工作。

于 2017-09-03T04:48:21.847 回答