我使用以下命令构建了openssl和zlib
然后libcurl
:
nmake -f Makefile.vc6 CFG=release-dll-ssl-dll-zlib-dll
在输出中,我可以看到在zlib
类的编译过程中启用了libcurl
。
但是当我使用libcurl
获取具有以下设置的压缩页面时,响应不会被解压缩。
curl_easy_setopt(handle, CURLOPT_ENCODING, "");
curl_easy_setopt(handle, CURLOPT_HTTP_CONTENT_ENCODING, 1L);
CURLOPT_ENCODING is defined as CURLOPT_ACCEPT_ENCODING.
The libcurl version is 7.35.0. zlib version is 1.2.8 and openssl version is 1.0.1i.
真的很感激是否有人在Windows上使用libcurl
来解压缩数据并分享您的体验。感谢。
答案 0 :(得分:0)
CURLOPT_HTTP_CONTENT_ENCODING不是有效的libcurl选项!
你可能意味着CURLOPT_HTTP_CONTENT_DECODING,但你不需要这里。只需将CURLOPT_ACCEPT_ENCODING设置为“”即可,但需要启用libcurl zlib才能使其请求压缩内容并在接收时自动解压缩。
此功能在所有支持的平台上的工作方式相同。这是完全相同的代码运行。如果它不能在特定平台上运行,我会怀疑你的libcurl实际上没有启用它。
答案 1 :(得分:-1)
我已经找到了问题所在。新的libcurl lib实际上是用zlib启用的。问题出在我的安装程序中,它不会将新的libcurl lib复制到安装目录。在我手动替换lib之后,解压缩工作了!
谢谢!