色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

c接收 json

錢斌斌1年前8瀏覽0評論

在C語言中,如何接收JSON數據呢?

需要用到以下兩個庫:
- cJSON:一個用于解析JSON數據的輕量級庫。
- libcurl:一個用于發送HTTP請求的庫。
下面是一個簡單的例子:
#include#include#include#include#include "cJSON.h"
int main(void) {
CURL *curl;
CURLcode res;
char *url = "http://example.com/json";
char response[1000];
cJSON *json = NULL;
cJSON *data = NULL;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_memory_callback);
curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)response);
res = curl_easy_perform(curl);
if(res != CURLE_OK) {
printf("Error: %s\n", curl_easy_strerror(res));
} else {
json = cJSON_Parse(response);
if (!json) {
printf("Error: JSON data is invalid.\n");
} else {
data = cJSON_GetObjectItem(json, "data");
printf("Data: %s\n", cJSON_Print(data));
}
}
curl_easy_cleanup(curl);
}
return 0;
}

在此代碼中,我們首先初始化了CURL庫,并設置了URL以及輸出數據的回調函數。回調函數的作用是將接收到的數據存儲在response變量中。

接下來,我們使用cJSON庫解析JSON數據,如果發現數據無效,則報錯,否則輸出數據中的data字段。

這只是一個簡單的例子,當然你可以根據自己的需要進行修改和擴展。