C語言作為一門編程語言,可以通過POST方式從服務器接受JSON數據。
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <curl/curl.h>int main() { CURL *curl; CURLcode res; curl_global_init(CURL_GLOBAL_ALL); curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/api"); curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "param1=value1¶m2=value2"); /* 獲取服務器返回的json數據,把數據保存到字符串中 */ curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_callback); curl_easy_setopt(curl, CURLOPT_WRITEDATA, data); /* 提交POST請求 */ res = curl_easy_perform(curl); if(res != CURLE_OK) fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res)); /* 清理curl */ curl_easy_cleanup(curl); } curl_global_cleanup(); return 0; }
通過POST方式從服務器接受JSON數據,需要使用CURL的庫函數,這里使用CURL的easy接口對請求進行管理,在請求中設置URL和參數,提交POST請求,并設置接受JSON數據的回調函數,最后清理CURL實例。