DELETE 请求方法

DELETE HTTP 方法要求服务器删除指定的资源。

DELETE 方法对消息体没有明确的语义定义,因此消息体应该为空。

请求有正文 可能
成功响应有正文 可能
安全
幂等
可缓存
允许在 HTML 表单中使用

语法

http
DELETE <request-target>["?"<query>] HTTP/1.1
<请求目标>

Host 标头中提供的信息结合使用时,标识请求的目标资源。这是对源服务器的请求中的绝对路径(例如,/path/to/file.html),以及对代理的请求中的绝对 URL(例如,http://www.example.com/path/to/file.html)。

<query> 可选

一个可选的查询组件,前面带有一个问号 ?。通常用于以 key=value 对的形式携带识别信息。

示例

成功删除资源

以下请求要求服务器删除资源 file.html

http
DELETE /file.html HTTP/1.1
Host: example.com

如果请求成功,可能会有多种 成功的响应状态码204 No Content 响应表示请求成功,且无需向客户端发送额外信息。

http
HTTP/1.1 204 No Content
Date: Wed, 04 Sep 2024 10:16:04 GMT

200 OK 响应表示请求成功,且响应主体中包含描述结果的表示。

http
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Date: Fri, 21 Jun 2024 14:18:33 GMT
Content-Length: 1234

<html lang="en-US">
  <body>
    <h1>File "file.html" deleted.</h1>
  </body>
</html>

202 Accepted 响应表示请求已被接受,且很可能会成功,但资源尚未被服务器删除。

http
HTTP/1.1 202 Accepted
Date: Wed, 26 Jun 2024 12:00:00 GMT
Content-Type: text/html; charset=UTF-8
Content-Length: 1234

<html lang="en-US">
  <body>
    <h1>Deletion of "file.html" accepted.</h1>
    <p>See <a href="http://example.com/tasks/123/status">the status monitor</a> for details.</p>
  </body>
</html>

规范

规范
HTTP 语义
# name-delete

浏览器兼容性

浏览器不会将 DELETE 方法用于用户发起的行为,因此“浏览器兼容性”不适用。开发者可以使用 fetch() 设置此请求方法。

另见