【问题标题】:C# get the HTTP Headers of a GET request without bodyC# 获取没有正文的 GET 请求的 HTTP 标头
【发布时间】:2013-07-25 12:57:47
【问题描述】:

我遇到了一个奇怪的问题。我正在尝试在不发送正文的情况下获取网页的标题。 这个请求会经常发生,所以我要做的是检查 Last-Modified、Etag 和 Content-Length 标头是否有更改。但是由于我正在检查的页面很大,我不想下载正文。

我知道有一个特定的 HEAD 请求可以在 C# 中使用,但是当使用它时,服务器会发送回与标准 GET 请求不同的标头。 HEAD 请求不包含我要查找的任何标头。

有人有什么想法吗?

【问题讨论】:

  • GET 和 HEAD 请求有什么区别?可以展示一下吗?

标签: c# http http-headers


【解决方案1】:

不使用 HEAD 请求是不可能的。最好参考这个link

【讨论】:

    【解决方案2】:

    如果您将Range 标头值设置为bytes=0-0 并执行请求,您将获得带有1 字节正文的标头。这仅在服务器支持服务范围时才有效。

    【讨论】:

      【解决方案3】:

      没有办法(除了 HEAD 请求)获取没有正文的标头。无论如何,服务器都会发送所有数据。

      我强烈建议您重新考虑应用/系统架构,如果为时不晚的话。 如果我有你要求的网络服务器,我会阻止你的所有连接。 如果服务器属于您,则考虑实施通知或类似的东西。

      【讨论】:

        猜你喜欢
        • 2017-11-01
        • 2015-02-18
        • 1970-01-01
        • 2020-03-15
        • 2016-10-22
        • 2011-09-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多