Linux下cURL使用教程之十四:libcurl编程

Linux下cURL使用教程之十三:curl vs wget中我们谈到,curl是基于libcurl库实现的。
而libcurl库是开源免费跨平台的,可用于多种语言。
有时候linux的功能不足以满足我们的要求,或者是需要在特殊环境下实现某些功能(比如在PHP服务器上完成抓取),这时候就需要用到libcurl编程。

官方提供了一些demo代码,大家下载查看。
本篇文章我们只谈谈各种语言下的使用,及一些参考。

C/C++

C/C++语言下使用libcurl有些繁琐,但功能很强大、稳定高效。而且尤其C下本身开源库相比其它语言较少,因此libcurl库使用较多。
参考:
http://curl.haxx.se/libcurl/c/libcurl-tutorial.html
http://curl.haxx.se/libcurl/c/

PHP

PHP的libcurl库使用较多。

参考:
http://cn2.php.net/curl
http://curl.haxx.se/libcurl/php/

Python

python中也有curl库:PycURL。
但更易用使用更普遍的还是requests

Java

Java下的curl库一度被抛弃:accessing libcurl from Java
不知道目前github上的版本是否稳定。
更建议使用apache httpclient(貌似现在叫做httpcomponents),参考:Apache HttpComponents

Linux

如果作为日常请求工作使用,如在测试接口时,更建议使用带有GUI界面的postman,功能很强大,而且自带分组、回归等CI功能。
参考:Postman | Supercharge your API workflow

总结

如果需要编写shell脚本进行功能更强大的CI测试,curl仍是首选。
此系列告一段落。