C語言是一種廣泛使用的編程語言。它是一種非常流行的編程語言,因?yàn)樗且粋€低級別的語言,可以更好地控制計(jì)算機(jī)硬件。在這里,我們將介紹如何使用C語言進(jìn)行HTTP GET請求,同時從服務(wù)器返回JSON數(shù)據(jù)。
#include <stdio.h> #include <stdlib.h> #include <curl/curl.h> int main(void) { CURL *curl; CURLcode res; char *data; // 初始化curl curl = curl_easy_init(); // 設(shè)置HTTP GET請求的URL curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/json"); // 設(shè)置接受JSON數(shù)據(jù) curl_easy_setopt(curl, CURLOPT_ACCEPT_ENCODING, "application/json"); // 重定向標(biāo)準(zhǔn)輸出到data curl_easy_setopt(curl, CURLOPT_WRITEDATA, &data); // 執(zhí)行HTTP GET請求 res = curl_easy_perform(curl); if (res != CURLE_OK) { fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res)); } // 清理并釋放curl資源 curl_easy_cleanup(curl); printf("%s\n", data); return 0; }
上面的代碼中,我們首先通過調(diào)用curl_easy_init()
函數(shù)來初始化curl。然后,設(shè)置HTTP GET請求的URL,該URL應(yīng)該是返回JSON數(shù)據(jù)的服務(wù)器的URL。
接下來,我們設(shè)置了接受JSON數(shù)據(jù),以便curl知道向服務(wù)器請求JSON數(shù)據(jù)。然后,我們將標(biāo)準(zhǔn)輸出重定向到data
指針,以便curl將從服務(wù)器返回的數(shù)據(jù)寫入該指針中。
最后,我們通過調(diào)用curl_easy_perform()
函數(shù)來執(zhí)行HTTP GET請求。如果請求成功,curl會將從服務(wù)器返回的JSON數(shù)據(jù)保存在data
中。
完成HTTP GET請求后,我們通過調(diào)用curl_easy_cleanup()
函數(shù)來清理并釋放curl資源。
最后,我們將從服務(wù)器返回的JSON數(shù)據(jù)打印在控制臺上。