目录
1. libcurl是一个跨平台的网络协议库,支持http, https, ftp, gopher, telnet, dict, file, 和ldap 协议。libcurl同样支持HTTPS证书授权,HTTP POST, HTTP PUT, FTP 上传, HTTP基本表单上传,代理,cookies,和用户认证。
库下载https://github.com/curl/curl/releases/tag/curl-7_71_1
2. 进入install.md里面有三条指令
1. curl的使用
2.函数介绍
- CURL_GLOBAL_ALL //初始化所有的可能的调用。
- CURL_GLOBAL_SSL //初始化支持 安全套接字层。
- CURL_GLOBAL_WIN32 //初始化win32套接字库。
- CURL_GLOBAL_NOTHING //没有额外的初始化。
curl_easy_setopt()
3.使用函数访问百度
- #include
- #include
- #include
- #define true 1
- #define false 0
-
- typedef unsigned int bool;
-
- size_t readData( void *ptr, size_t size, size_t nmemb, void *stream)
- {
- char buf[9000]= {'\0'};
- strncpy(buf,ptr,9000);
- printf("=============================getdata========================\n");
- printf("\n");
- printf("%s",buf);
-
- }
-
- bool getUrl()
- {
- CURL *curl;
- CURLcode res;
- struct curl_slist *headers = NULL;
- //headers = curl_slist_append(headers, "Accept: Agent-007");可以携带参数给服务器
- curl = curl_easy_init(); // 初始化
-
- if (curl)
- {
- //curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);// 请求头,浏览服务器的状态数据等
- curl_easy_setopt(curl, CURLOPT_URL,"http://www.baidu.com");//fangwen wwww
- curl_easy_setopt(curl,CURLOPT_WRITEFUNCTION , readData); //将返回的html主体数据输出到fp指向的文件
-
- res = curl_easy_perform(curl); // 执行
- if (res != 0)
- {
- curl_slist_free_all(headers);
- curl_easy_cleanup(curl);//shifang
- }
-
- return true;
- }
- }
- int main(void)
- {
- getUrl();
- }