在C語言中,我們很容易地創(chuàng)建了一個(gè)web后端,但我們需要提供API來允許客戶端與之通信。以傳遞JSON數(shù)據(jù)為例。我們可以使用以下方法傳遞JSON字符串。
#include <stdio.h> #include <stdlib.h> #include <cJSON.h> char* create_json(){ ... cJSON *json = cJSON_CreateObject(); cJSON_AddStringToObject(json, "name", "john"); cJSON_AddNumberToObject(json, "age", 30); cJSON_AddStringToObject(json, "city", "New York"); char *json_string = cJSON_PrintUnformatted(json); cJSON_Delete(json); return json_string; } int main() { char *json_string = create_json(); printf("Content-Type: application/json;\n\n"); printf("%s\n", json_string); free(json_string); return 0; }
這里,我們使用了一個(gè)叫做cJSON的庫,來處理JSON數(shù)據(jù)。在create_json()函數(shù)中,我們創(chuàng)建了一個(gè)JSON對(duì)象,并添加了一些鍵值對(duì)。然后我們將JSON對(duì)象轉(zhuǎn)換為字符串,并返回它。
我們在主函數(shù)中調(diào)用create_json()來獲得JSON字符串,并將其打印出來。這是一個(gè)簡單的后端代碼,它可以將JSON字符串傳遞給客戶端。
然后客戶端如何接收J(rèn)SON字符串呢?我們可以使用JavaScript來接收J(rèn)SON字符串。
fetch('/api') .then(response => response.json()) .then(data => console.log(data));
這里我們使用fetch API來加載'/ api'路徑,并解析響應(yīng),使其成為json格式。然后我們將數(shù)據(jù)打印到控制臺(tái)。
這是一個(gè)簡單的代碼示例,它讓我們了解了如何在C語言中創(chuàng)建web應(yīng)用程序,并在客戶端上使用JavaScript接收json字符串。