当前位置:   article > 正文

使用libcurl 支持https_libcurl 支持httpa

libcurl 支持httpa

刚好工作上需要编写客户端的程序,原本封装好的http程序代码突然异常了,百思不得其解。

然后再http client的代码中打印可能出现的异常,终于在下面的代码中捕获出来

  1. res = curl_easy_perform( g_curl );
  2. if (res == 0)
  3. {
  4. curl_easy_getinfo( g_curl, CURLINFO_RESPONSE_CODE, http_code);
  5. }
  6. else
  7. {
  8. curl_easy_strerror(res);
  9. fprintf(stderr, "curl_easy_perform() failed: %s\n",
  10. curl_easy_strerror(res));
  11. }
  12. return (0 == res) ? 0 : -1;

运行的时候,会打印 unsupported protocol 这样的信息,通过google 查到这个是因为我们在编译

libcurl库时没有添加对ssl的支持导致的,然后下载最新的openssl 库编译,然后在

Makefile中加上头文件路径和静态库路径:

  1. 头文件:
  2. -I../../../third/ssl/include/ssl
  3. 库文件:
  4. ../../../third/ssl/lib/libssl.a \
  5. ../../../third/ssl/lib/libcrypto.a

然后在编译配置的时候,加上选项

./configure -with-ssl=/usr/local/lib 

然后进行make,注意在编译最后的输出上有对各种协议的支持情况


可以看到,上面已经支持了SSL了。

原来以为可以很顺利的,结果编译的时候报一些*rtsp和*ldap相关的错误,然后google

发现,这个需要在curl 编译的时候禁用掉,然后到curl的目录下,重新配置编译配置

/configure -with-ssl=/usr/local/lib -without-librtmp -disable-rtsp  -disable-ldap -disable-ldaps

 OK,大功告成! 


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/685423
推荐阅读
相关标签
  

闽ICP备14008679号