C語言是一門廣泛用于系統程序和嵌入式設備開發的編程語言。在許多應用程序中,需要將數據以特定的格式發送到服務器。JSON是一種輕量級的數據交換格式,非常適合在Web應用程序中使用。C語言可以使用一些庫來發送JSON數據。
以下是一個使用C語言發送JSON數據的示例:
#include#include #include int main() { CURL *curl; CURLcode res; char *json_str; cJSON *root, *item1, *item2; // 創建一個JSON對象 root = cJSON_CreateObject(); cJSON_AddItemToObject(root, "name", cJSON_CreateString("John")); cJSON_AddItemToObject(root, "age", cJSON_CreateNumber(30)); // 將JSON對象轉為字符串 json_str = cJSON_Print(root); cJSON_Delete(root); // 使用CURL庫發送JSON數據 curl = curl_easy_init(); if (curl) { // 設置POST請求 curl_easy_setopt(curl, CURLOPT_POST, 1L); // 設置請求的URL curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/json_endpoint"); // 設置JSON數據 curl_easy_setopt(curl, CURLOPT_POSTFIELDS, json_str); // 發送請求并接收響應 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); } // 釋放JSON字符串 if (json_str) free(json_str); return 0; }
上面的代碼示例中使用了CURL庫實現POST請求,并將JSON對象轉為字符串后發送到服務器端。在實際項目中,可能需要對JSON數據進行自定義操作,可以使用cJSON庫來方便地解析和構建JSON數據。
上一篇vue 3新api