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

c 微信post json數據

錢瀠龍1年前8瀏覽0評論

最近需要在C語言中通過微信發送POST請求,傳輸JSON數據時遇到了一些問題。在這里和大家分享一下我的心得。

首先需要使用curl庫來進行HTTP請求。接下來我們需要設置請求頭的Content-Type為application/json,這樣才能正確的發送JSON數據。

curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, json_data);
curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, strlen(json_data));

其中,headers是一個包含Content-Type的指針數組,json_data是包含JSON數據的char數組,需要使用strlen計算長度。

完整的代碼如下:

CURL *curl;
CURLcode res;
struct curl_slist *headers = NULL;
char *json_data = "{\"key\":\"value\"}";
curl_global_init(CURL_GLOBAL_DEFAULT);
curl = curl_easy_init();
if (curl) {
headers = curl_slist_append(headers, "Content-Type: application/json");
curl_easy_setopt(curl, CURLOPT_URL, "https://api.weixin.qq.com/user/info");
curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, json_data);
curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, strlen(json_data));
res = curl_easy_perform(curl);
if (res != CURLE_OK)
printf("curl_easy_perform() failed: %s\n",
curl_easy_strerror(res));
curl_easy_cleanup(curl);
}
curl_global_cleanup();

通過這段代碼,我們就可以在C語言中發送JSON數據到微信API了。