1.命令行模式:
curl -d "附加信息" url
curl -v "url"
2.通过程序调用
static size_t process_data(void *buf, size_t size, size_t nmemb, void *str)
{
std::string &content = *(std::string *)str;
std::string data((char *)buf, size * nmemb);
content += data;
return data.size();
}
声明全局的curl:
curl_global_init(CURL_GLOBAL_ALL);
CURL *curl = curl_easy_init()
curl_easy_setopt(curl, CURLOPT_URL, "url");
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, &process_data);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &str_content)
执行:CURLcode res = curl_easy_perform(curl);
if(res == 0)表示出错
上述是get方法
post方法:在curl_easy_setopt()还需添加表单信息
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "...")
-->多次执行curl 时,设定之前调用curl_easy_reset(curl)
-->程序结束前:curl_easy_cleanup(curl);
curl_global_cleanup();
调用get方法时的url格式:http://....:端口号/..resource?method=fund&accesstoken=....
而调用post方法时分别在URL中添加url和POSTFIELD中添加表单信息