Проблема с CURLOPT_WRITEDATA ⇐ C++
-
Anonymous
Проблема с CURLOPT_WRITEDATA
I am using libcurl to fetch json data using GET request from a webserver.
This is my sample code:
char *DownloadedResponse; static int writer(char *data, size_t size, size_t nmemb, char *buffer_in) { if (buffer_in != NULL) { buffer_in = new char[size*nmemb]; strcpy(buffer_in,data); DownloadedResponse = buffer_in; return size * nmemb; } return 0; } char * DownloadJSON(string URL) { CURL *curl; CURLcode res; struct curl_slist *headers=NULL; curl_slist_append(headers, "Accept: application/json"); curl_slist_append( headers, "Content-Type: application/json"); curl_slist_append( headers, "charsets: utf-8"); curl = curl_easy_init(); if (curl) { curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); curl_easy_setopt(curl, CURLOPT_URL, URL.c_str()); curl_easy_setopt(curl, CURLOPT_HTTPGET,1); curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); curl_easy_setopt(curl,CURLOPT_WRITEFUNCTION,writer); res = curl_easy_perform(curl); if (CURLE_OK == res) { char *ct; res = curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &ct); if((CURLE_OK == res) && ct) { cout
Источник: https://stackoverflow.com/questions/398 ... -writedata
I am using libcurl to fetch json data using GET request from a webserver.
This is my sample code:
char *DownloadedResponse; static int writer(char *data, size_t size, size_t nmemb, char *buffer_in) { if (buffer_in != NULL) { buffer_in = new char[size*nmemb]; strcpy(buffer_in,data); DownloadedResponse = buffer_in; return size * nmemb; } return 0; } char * DownloadJSON(string URL) { CURL *curl; CURLcode res; struct curl_slist *headers=NULL; curl_slist_append(headers, "Accept: application/json"); curl_slist_append( headers, "Content-Type: application/json"); curl_slist_append( headers, "charsets: utf-8"); curl = curl_easy_init(); if (curl) { curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); curl_easy_setopt(curl, CURLOPT_URL, URL.c_str()); curl_easy_setopt(curl, CURLOPT_HTTPGET,1); curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); curl_easy_setopt(curl,CURLOPT_WRITEFUNCTION,writer); res = curl_easy_perform(curl); if (CURLE_OK == res) { char *ct; res = curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &ct); if((CURLE_OK == res) && ct) { cout
Источник: https://stackoverflow.com/questions/398 ... -writedata
Мобильная версия