C - libcurl - 如何在不使用CURLOPT_XFERINFOFUNCTION的情况下获取dltotal

时间:2015-06-02 23:23:14

标签: c libcurl

我正在使用 libcurl 多接口,我需要知道为每个请求发送了多少数据。我宁愿不使用CURLOPT_XFERINFOFUNCTION,因为它被调用很多,我只需要在CURLOPT_WRITEFUNCTION回调中知道dltotal。我希望清理现有的简易句柄和malloc数据,而一旦收到所有数据,我仍然在写回调中。是否有一个我可以调用的函数,它将返回为特定的简单句柄发送的数据总量?

我尝试将curl_easy_getinfo()CURLINFO_SIZE_DOWNLOAD一起使用,并始终返回 0 。我还尝试了CURLINFO_CONTENT_LENGTH_DOWNLOAD,它总是返回 0 。我是在CURLOPT_WRITEFUNCTION回调中调用此内容。

1 个答案:

答案 0 :(得分:1)

你从这些调用中得到零的原因可能是因为之前不知道这个大小。

但是,让我也提醒您“我想要清理现有的简易句柄和malloc数据,而我仍处于写回调状态”听起来像是等待发生的灾难。你真的不应该在回调中清理句柄。