在C語言中,我們經常會使用HTTP請求來獲取或者提交數據。當我們需要提交JSON數據時,一種較為常見的方式就是將JSON數據作為POST請求參數發送到服務器端。
#include <stdlib.h>
#include <stdio.h>
#include <curl/curl.h>
int main(void) {
CURL *curl;
CURLcode res;
char *json = "{\"name\":\"xiaoming\",\"age\":23}";
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, "http://example.com");
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, json);
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_slist_free_all(headers);
}
curl_global_cleanup();
return 0;
}
在這段代碼中,我們首先需要將JSON數據存儲在一個字符指針變量中,然后設置HTTP請求頭部的Content-Type為application/json,以便服務器能夠正確地解析JSON數據。接著,我們使用curl_easy_setopt函數設置其他請求選項,包括請求的URL、POST參數和其他選項。最后,我們使用curl_easy_perform函數來執行HTTP請求,并處理返回結果。
上一篇vue增加子段