libcurl中是否有可用的压缩

时间:2012-11-14 13:38:48

标签: c++ libcurl

我需要使用带有C ++的libcurl将一个巨大的文件从本地机器传输到远程机器。是否有可用libcurl内置的压缩​​选项。由于要传输的数据很大(大小为100 MB到1 GB),如果我们在libcurl本身中有任何这样的选项会更好。我知道我们可以压缩数据并通过libcurl发送它。但只是想知道有没有更好的方法。

注意:在我的情况下,许多客户端计算机会定期将这么大的数据传输到远程服务器。

感谢, Prabu

2 个答案:

答案 0 :(得分:2)

根据curl_setopt()和选项CURLOPT_ENCODING,您可以指定:

  

“Accept-Encoding:”标题的内容。这使得能够解码   的回应。支持的编码是“身份”,“缩小”和    “gzip的”的。如果设置了空字符串“”,则包含全部的标题   发送支持的编码类型。

Here是一些示例(只需在您的浏览器中点击搜索并输入compression),但我不知道它是否正常工作以及它是否预期已经压缩数据。

您仍然可以使用gzcompress()并自行发送压缩块(我会以这种方式完成任务...您可以更好地控制实际发生的事情,并且您将能够更改使用算法)。

答案 1 :(得分:0)

您需要自己发送zlib压缩文件。也许在服务器端需要进行一些修改。