序
编译libcurl请移步我的libcurl openssl编译 学习笔记
本文只记录curl_easy_setopt函数在post请求的一些细节。
正文
环境:window10 64位 家庭版 17134.706
visual studio 2013
curl_easy_setopt的函数原型curl_easy_setopt(handle,opt,param) ,只有三个参数,第一参数是curl_easy_init返回的CURL *, 第二参数和第三参数比较多变。
关于第二参数 CURLOPT_HEADER 与CURLOPT_POSTFIELDS的细节: 如果CURLOPT_HTTPHEADER的第三参数curl_slist填写了"Content-type: application/json"
,那么CURLOPT_POSTFIELDS的第三参数char需要用"{\"type\":\"2\",\"append_shops_id\":\"9\"}"
格式,相反使用type=2&append_shops_id=9
上实例代码
size_t function(void *ptr, size_t size, size_t nmemb, void *stream)
{
printf("%s\n", UTF_82ASCII((std::string)(char*)ptr).c_str());
return size*nmemb;
}
void testCurl()
{
CURL *curl