KillerPinockel
Lieutenant
- Registriert
- Jan. 2009
- Beiträge
- 664
Hallo,
ich möchte meinen C-Code umstellen. Früher habe ich curl als Systemaufruf (system()) verwendet. Nun möchte ich libcurl für C nutzen.
Hier wäre der frühere Curl Aufruf aus Linux
So richtig bekomme ich die Umstellung nicht hin. Die Daten liegen in einer Datei vor und diese kann nicht direkt übertragen werden, weil File-Upload gesperrt ist (siehe oben).
Hier mein bisheriger Code (Zugang funktioniert soweit)
Wäre klasse, wenn jemand kurz helfen könnte!
Danke und schönes Wochenende!
ich möchte meinen C-Code umstellen. Früher habe ich curl als Systemaufruf (system()) verwendet. Nun möchte ich libcurl für C nutzen.
Hier wäre der frühere Curl Aufruf aus Linux
Code:
curl -X POST -u <USER>:<PASS> -H \"Content-Encoding: gzip\" -H \"Content-Type: application/json\" --data-binary @<FILENAME> <SERVER>
So richtig bekomme ich die Umstellung nicht hin. Die Daten liegen in einer Datei vor und diese kann nicht direkt übertragen werden, weil File-Upload gesperrt ist (siehe oben).
Hier mein bisheriger Code (Zugang funktioniert soweit)
Code:
CURL *curl;
curl = curl_easy_init();
if (curl) {
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Content-Encoding: gzip");
headers = curl_slist_append(headers,
"Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_URL,
"<SERVER>");
curl_easy_setopt(curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_easy_setopt(curl, CURLOPT_USERPWD, "<USER>:<PASS>");
curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
CURLcode res = curl_easy_perform(curl);
if (res != CURLE_OK)
fprintf(stderr, "curl_easy_perform() failed: %s\n",
curl_easy_strerror(res));
curl_slist_free_all(headers);
curl_easy_cleanup(curl);
}
Wäre klasse, wenn jemand kurz helfen könnte!
Danke und schönes Wochenende!