在C語言中,使用HTTP協(xié)議與服務器通信,可以通過發(fā)送POST請求來傳遞JSON格式的數(shù)據(jù)。要發(fā)送POST請求,需要使用網(wǎng)絡編程庫,例如libcurl。
首先,需要初始化libcurl,可以使用如下代碼:
curl_global_init(CURL_GLOBAL_ALL);
然后,創(chuàng)建一個curl對象:
CURL *curl; curl = curl_easy_init();
接下來,設置請求的URL:
curl_easy_setopt(curl, CURLOPT_URL, "http://www.example.com/api");
設置請求類型為POST:
curl_easy_setopt(curl, CURLOPT_POST, 1L);
設置請求體為JSON格式的數(shù)據(jù):
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "{\"name\": \"John\", \"age\": 30}");
設置請求頭信息,告知服務器請求體的類型為JSON:
struct curl_slist *headers = NULL; headers = curl_slist_append(headers, "Content-Type: application/json"); curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
發(fā)送請求并接收響應,可以使用如下代碼:
CURLcode res; res = curl_easy_perform(curl);
最后,釋放curl對象和libcurl:
curl_slist_free_all(headers); curl_easy_cleanup(curl); curl_global_cleanup();
至此,整個發(fā)送POST請求并傳遞JSON格式數(shù)據(jù)的過程完成。
上一篇python 簡潔運算符
下一篇python 波特率