2010-09-11 69 views
0

我试图通过设置让使用的libcurl源一定数量的字节:限制libcurl的响应数据

curl_easy_setopt(curl, CURLOPT_BUFFERSIZE, 100); //get 100 bytes from source 

但我每一次,甚至还没有接近有时只有22字节得到不同大小的数据。这是否工作?

回答

1

从文档:

传递一个长指定首选 大小(以字节为单位)libcurl中接收缓冲器 。这个 的主要点在于写入回调得到更多的时候调用 和更小的 块。这只是作为 请求而不是订单。你不能是 保证实际得到给定的 大小。 (在7.10加)

这个尺寸的默认设置一样大 可能(CURL_MAX_WRITE_SIZE),所以它 才有意义,如果 你想让它smaller.you希望它更小,使用此选项。

因此,没有任何简单的方法可以立即获得100个字节。你需要跟踪你收到的字节数,只要你有100就停止阅读。