在c語言中,通過http請求發送json數據格式的數據是十分常見的場景,它可以用于與后端通信以獲取數據或更新數據等操作。下面將介紹如何通過c語言發送json數據。
#include#include #include #include #include int main(void) { CURL *curl; CURLcode res; curl = curl_easy_init(); if(curl) { char *data = "{ \"name\": \"John Smith\", \"age\": 32, \"city\": \"New York\", \"hobbies\": [ \"reading\", \"traveling\", \"music\" ] }"; struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Content-Type: application/json"); headers = curl_slist_append(headers, "charset: utf-8"); curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/api/users"); curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data); res = curl_easy_perform(curl); if(res != CURLE_OK) { fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res)); } curl_easy_cleanup(curl); curl_slist_free_all(headers); } return 0; }
以上代碼中,我們首先需要引入cURL和cJSON兩個庫,通過curl_slist_append()函數設置請求頭部,其中Content-Type設置為application/json,接著通過curl_easy_setopt()函數設置請求地址、請求類型和請求數據,最后通過curl_easy_perform()函數發送請求。如果發送失敗,則會輸出錯誤信息。
需要注意的是,在發送數據時,需要將其轉化為json格式的字符串形式。
上一篇vue gantter
下一篇html導航欄菜單代碼