【发布时间】:2011-06-06 14:42:45
【问题描述】:
我正在使用 libcurl,目前是简单的 api。我正在向使用 HTTP 块编码响应的 Web 服务器发出请求。我想知道是否有办法知道来自服务器的块何时完成。我正在寻找某种类型的回调。 DEBUGDATA 似乎没有包含它,而 CHUNK_END_FUNCTION 似乎无关。
【问题讨论】:
标签: c++ libcurl chunked-encoding chunks
我正在使用 libcurl,目前是简单的 api。我正在向使用 HTTP 块编码响应的 Web 服务器发出请求。我想知道是否有办法知道来自服务器的块何时完成。我正在寻找某种类型的回调。 DEBUGDATA 似乎没有包含它,而 CHUNK_END_FUNCTION 似乎无关。
【问题讨论】:
标签: c++ libcurl chunked-encoding chunks
如果您使用CURLOPT_DEBUGFUNCTION 选项,您将获得“未分块”的数据,然后您可以根据需要自行扫描和解析数据,从而跟踪块的结尾或您喜欢的任何内容。 ()
作为“n.m.”已经说过,libcurl 没有公开块的 API,因为它试图使传输编码对用户完全透明。
或者,应用程序可以告诉 libcurl 根本不解码分块传输编码,而是使用 CURLOPT_HTTP_TRANSFER_DECODING 将其原样传递给应用程序。
【讨论】:
不,libcurl 没有任何 API 可以让您知道这一点。
【讨论】: