C語言可以使用cURL庫來發送HTTP請求,使用POST方法發送JSON數據可以使用下面的代碼:
#include#include int main(void) { CURL *curl; CURLcode res; struct curl_slist *headers = NULL; char *json = "{\"name\":\"John\", \"age\":25}"; curl = curl_easy_init(); if(curl) { headers = curl_slist_append(headers, "Content-Type: application/json"); curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/api"); curl_easy_setopt(curl, CURLOPT_POSTFIELDS, json); curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); 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); } return 0; }
以上代碼使用了cURL庫向https://example.com/api發送了JSON數據。我們先定義了一個指針變量curl,之后設置了HTTP請求的URL和JSON數據,還設置了Content-Type頭部,最后調用curl_easy_perform()函數發起請求,如果請求返回的狀態碼不是CURLE_OK,表示請求失敗,輸出錯誤信息。最后釋放headers并清理curl變量。