欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

c 生成json格式post提交

阮建安1年前10瀏覽0評論

C語言中使用第三方庫可以輕松生成JSON格式的數據,并通過POST提交到API接口。該方法可以應用于各種C語言編程場景,包括嵌入式設備。

下面是一個使用C語言生成JSON格式數據并POST提交的例子:

#include <stdio.h>
#include <stdlib.h>
#include <cjson/cJSON.h>
#include <curl/curl.h>
int main(void)
{
CURL *curl;
CURLcode response_code;
char *url = "http://example.com/api";
char *data;
cJSON *root, *name, *age;
root = cJSON_CreateObject();
cJSON_AddItemToObject(root, "name", cJSON_CreateString("Tom"));
cJSON_AddItemToObject(root, "age", cJSON_CreateNumber(20));
data = cJSON_Print(root);
curl = curl_easy_init();
if(curl)
{
struct curl_slist *headers = NULL;
headers = curl_slist_append(headers, "Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_URL, url);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
response_code = curl_easy_perform(curl);
if(response_code != CURLE_OK)
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(response_code));
curl_easy_cleanup(curl);
}
cJSON_Delete(root);
free(data);
return 0;
}

上面例子中使用了兩個C語言庫:cJSON和libcurl。cJSON可以將數據解析為JSON格式或將JSON格式編碼為C語言數據結構。libcurl用于HTTP通信,支持各種協議、認證方式、代理等。