【问题标题】:How to ask a http server present a http header field `Content-Length`?如何要求 http 服务器提供一个 http 标头字段“Content-Length”?
【发布时间】:2015-03-05 00:46:34
【问题描述】:

我正在使用行套接字接口测试 Last.fm api。
现在我注意到一些 api 的 http 响应没有包含字段 Content-Length 。
但是我想知道有没有办法询问提供它的服务器?
因为我不能在我的程序中优雅地处理这个问题。

引用 RFC:
7.2.2 长度
当消息中包含一个实体-主体时,该主体的长度可以通过两种方式之一来确定。如果存在 Content-Length 标头字段,则其以字节为单位的值表示 Entity-Body 的长度。否则,正文长度由服务器关闭连接决定。

【问题讨论】:

  • 在向服务器发送请求时,您可以提及您想要返回的数据类型。我认为 Content-type 是您需要在请求中发送的标头。
  • 与 Content-type 无关,在使用 Last.fm api 时,添加 uri 参数 "format=json" ,然后服务器返回 json 中的内容。

标签: http


【解决方案1】:

要查看的正确 RFC 是 RFC 7230(第 3.3.2 节)。

不,在 HTTP/1.1 中,客户端必须能够处理分块编码(这是不提供 Content-Length 标头字段的唯一正当理由)。

【讨论】:

    猜你喜欢
    • 2011-02-15
    • 1970-01-01
    • 2013-04-06
    • 1970-01-01
    • 2016-12-29
    • 2021-01-08
    • 1970-01-01
    • 1970-01-01
    • 2018-08-25
    相关资源
    最近更新 更多