C Web框架現在受到越來越多的開發者的喜愛,因為它可以幫助我們快速構建高性能的web應用。與此同時,JSON也成為了web前端和后端之間溝通的重要數據格式。那么,C Web框架如何使用JSON返回數據給前端呢?
// 加載需要的頭文件 #include "cweb.h" #include "json.h" // 定義返回JSON數據的結構 struct JSONResponse { char* name; int age; }; // 定義路由處理函數 void handler(struct Request request, struct Response response) { // 創建返回JSON數據的結構體并初始化 struct JSONResponse res = {"Tom", 23}; // 調用json庫中的封裝好的轉換函數,將結構體轉換成JSON字符串 char* json_str = json_serialize_to_string(res); // 設置response的Content-Type為application/json response.set_content_type(response, "application/json"); // 將JSON字符串寫入response body response.write(response, json_str); // 釋放json_str內存 free(json_str); } // 注冊路由 void register_routes(struct CWebRouter* router) { router->add(router, "GET", "/user", handler); } // 啟動服務器 void start_server() { struct CWeb app; app.create(&app); app.register_routes(&app.router, register_routes); app.run(&app); } int main() { start_server(); return 0; }
上述代碼中我們使用了json庫來幫助我們快速將結構體轉換成JSON字符串,并通過設置response的Content-Type為application/json來告知前端返回的是JSON格式數據。通過以上代碼,我們就可以在C Web框架中使用JSON返回數據給前端了。