HEAD 请求方法
HEAD HTTP 方法以标头的形式请求资源的元数据,这些标头是如果使用 GET 方法服务器将发送的。此方法可用于 URL 可能会产生大量下载的情况,例如,HEAD 请求可以读取 Content-Length 标头,以在用 GET 下载文件之前检查文件大小。
如果对 HEAD 请求的响应显示缓存的 URL 响应现在已过时,则即使没有发出 GET 请求,缓存副本也会失效。
警告: 如果 HEAD 请求的响应包含正文,则必须忽略响应正文。任何描述错误正文的表示标头都被认为是描述 GET 请求将接收到的响应正文。
语法
http
HEAD <request-target>["?"<query>] HTTP/1.1
<请求目标>-
与
Host标头中提供的信息结合使用时,标识请求的目标资源。这是对源服务器的请求中的绝对路径(例如,/path/to/file.html),以及对代理的请求中的绝对 URL(例如,http://www.example.com/path/to/file.html)。 <query>可选-
一个可选的查询组件,前面带有一个问号
?。通常用于以key=value对的形式携带识别信息。
示例
成功检索资源元数据
以下 curl 命令为 example.com 创建一个 HEAD 请求
bash
curl --head example.com
这与 GET 请求等效,只是服务器不应在响应中包含消息正文。它创建了一个如下所示的 HTTP 请求
http
HEAD / HTTP/1.1
Host: example.com
User-Agent: curl/8.6.0
Accept: */*
服务器只发送由标头组成的 200 OK 响应。响应实际上是描述资源的元数据而不是资源本身(此示例中省略了一些缓存标头,以简洁起见)
http
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Date: Wed, 04 Sep 2024 10:33:11 GMT
Content-Length: 1234567
规范
| 规范 |
|---|
| HTTP 语义 # HEAD |
浏览器兼容性
加载中…