好久没写博客了,今天心血来潮,记录一下今天解决的一个问题。
curl设置了CURLOPT_ACCEPT_ENCODING (7.21.8之前为CURLOPT_ENCODING )之后,按照官方的说法,是可以自动将响应的gzip压缩的content解压的,但是我的工程里却没有解压,而且网上一搜索也是一大批问这个问题的人,而回答居然都是说可以自动解压。我就纳了闷了。
我工程里的curl库是我自己编译的,我去看了一下当时的config.log,搜索zlib居然看到with-zlib是disable的,那就明白了,下载zlib库,先编译好,然后在curl工程里configure带上-with-zlib=参数,坑爹的是,它还必须的到你设置的目录下找include目录再去找头文件,找lib目录再去找libz.a,而zlib的库里恰恰没这种目录结构,那就自己手动建一下吧。
然后编译curl,工程中设置CURLOPT_ACCEPT_ENCODING 为gzip,响应果然就顺利自动解压了,O了。
时间: 2024-10-12 11:14:53