http - 发送 HTTP 请求告诉服务器只返回 header 而不返回正文?

标签 http curl webserver request response

是否可以通过 HTTP 请求发送 header ,告诉网络服务器只向您发送 header 作为响应而不发送正文内容?

我正在使用 cURL 发出此类请求,但从技术上讲,我认为应该可以将简单的 header 作为请求的一部分发送。

例如,存在一个 304 Not Modified HTTP 响应代码。当您使用缓存标记或日期时间信息向服务器发出请求时,服务器可以检测到该请求并仅返回 header 作为响应,告诉用户代理使用其缓存作为响应。这意味着在带宽方面来自服务器的响应非常非常小。

但是是否有可以发送到服务器的 header ,使服务器只返回 header 而不返回正文内容?

这里的想法是发出 HTTP 请求,否则可能会返回大量非常小的数据。例如将返回 JSON 数据或日志的 API 调用,而实际上用户代理唯一感兴趣的是确保请求通过而不是其他。这是为了在主体可能存在的情况下最大限度地减少进出服务器的带宽,但在用户代理正在执行的操作的上下文中没有任何必要。

虽然可以设计一个 API 来监听特定的自定义 header 或诸如此类的东西,但除非万不得已,否则我宁愿不这样做。但是我一直无法找到是否有一种标准化的方法来发出 HTTP 请求,告诉服务器不要发送任何正文内容?

最佳答案

如果服务器支持,则有HEAD Action (相对于 GET 或 POST)。这告诉服务器只发送 header ,不发送正文。

The HEAD method is identical to GET except that the server MUST NOT return a message-body in the response.

关于http - 发送 HTTP 请求告诉服务器只返回 header 而不返回正文?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11754478/

相关文章:

http - 为什么 curl 不起作用,但 wget 起作用?

java - 问题: curl: (7) Failed to connect to localhost port 1080: Connection refused

php - 使用 PHP 中的 POST 数据从 ASP.net 抓取数据

json - 如何在 iOS5 中将 JSON 数据对象发布到服务器?

http - 如何使用 curl 以 UTF-8 编码发布表单数据?

node.js - Express 3 - 提供静态脚本/样式 - 错误 : Failes to load resource (404)

http - 你如何使用 Go 和 http 包删除 cookie?

asp.net - 大型 Web 应用程序中的 HTTP Keep Alive

Angular 4, typescript 将接口(interface)属性分配给变量

c - 如何在我的 gstreamer 中启用 httpsrc 插件?