DELETE请求,?id=7显示not allow,但是直接传id就行
时间: 2024-10-24 17:15:04 浏览: 11
ThinkPHP 5.1 跨域配置方法
5星 · 资源好评率100%
DELETE请求是一种HTTP方法,用于删除指定的资源。在发送DELETE请求时,通常不会像GET、POST那样在URL中显式地携带大量的参数。对于`id=7`这样的情况,这通常是一个示例,表示你想删除ID为7的某个资源。在实际的DELETE请求中,这个ID会放在请求头(如`Content-Type: application/json`中的JSON数据,或者作为路径的一部分,如`/api/resource/7`)里,而不是URL查询字符串中。
当你试图使用`?id=7`的方式发送DELETE请求时,浏览器可能会默认不允许这样做,因为按照规范,GET和DELETE操作不应该带有查询参数。如果服务端API设计成接受这种方式,那么可能是为了简化前端的编码,但这并非标准做法。
正确的做法通常是这样的:
```json
// JavaScript (fetch)
fetch('/api/resource/7', {
method: 'DELETE'
});
// jQuery AJAX
$.ajax({
url: '/api/resource/7',
type: 'DELETE',
data: {}
});
```
在这个例子中,`/api/resource/7`这部分就包含了需要删除的资源ID。如果返回状态码为403(禁止)或405(方法禁用),那说明服务端确实不支持这种形式的请求。
阅读全文