在C語言中,我們有時需要向API發送JSON參數。JSON是一種輕量級的數據交換格式,它與C語言中的結構體非常相似。在將JSON參數傳遞給API之前,我們需要將其編碼為字符串。然后,我們可以使用HTTP庫將參數發送到API。
#include <stdio.h> #include <stdlib.h> #include <curl/curl.h> #include <string.h> #define URL "http://example.com/api" int main(void) { CURL *curl; CURLcode res; char *json_str = "{ \"name\": \"John\", \"age\": 30, \"city\": \"New York\" }"; curl_global_init(CURL_GLOBAL_ALL); 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, 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); } curl_global_cleanup(); return 0; }
以上代碼演示了如何使用CURL庫向API發送JSON參數。首先,我們將JSON參數存儲為字符串。然后,我們初始化CURL并設置API的URL和請求參數。我們還設置了HTTP標頭,以指示請求的內容類型為JSON。最后,我們使用curl_easy_perform()函數發送請求并處理響應。
下一篇vue去華為水印