CGI(Common Gateway Interface)可以將Web服務器和其他計算機應用程序連接在一起,實現Web應用程序與外部應用程序的交互。C語言是CGI編寫的主要語言之一,其可以利用CGI技術將動態數據返回給前端,但是返回結果一般為html格式,并不能直接被前端利用。這時候,將返回結果轉換為JSON格式可以方便前后端之間的數據交互。
#include<stdio.h> #include<stdlib.h> #include<string.h> #include<json/json.h> //定義JSON格式數據結構體 struct Result{ int result; char msg[100]; }; int main(){ struct Result res; res.result = 1; strcpy(res.msg,"Success"); //將數據格式化為JSON格式 char* json_res = json_object_to_json_string( json_object_new_int(res.result, json_object_new_string(res.msg)) ); //將結果設置為HTTP響應內容 printf("Content-Type: application/json\n\n"); printf("%s", json_res); return 0; }
上面的代碼實現了基于C語言的CGI程序返回JSON格式的數據。首先定義了一個結構體Result,用于存儲需要返回的數據,包括一個int類型變量和一個char類型數組。然后引入了json-c庫中的頭文件,定義了一個指針變量json_res,用于存儲格式化后的JSON數據。接下來,將定義好的Result結構體中的數據按照JSON格式組織,并將格式化后的JSON數據設置為HTTP響應,最后通過return 0;返回程序執行結果。
上一篇vue 請求api 同步
下一篇如何在CSS中制作餅狀圖