在web開發(fā)中,傳遞數(shù)據(jù)是常見的需求。對(duì)于前端來說,接收到的數(shù)據(jù)通常是JSON格式的。在前端框架中,c語言實(shí)現(xiàn)了將JSON數(shù)組傳遞給js的功能。
#include <stdio.h> #include <jansson.h> int main(int argc, char **argv) { json_t * root = json_array(); json_array_append_new(root, json_integer(1)); json_array_append_new(root, json_integer(2)); json_array_append_new(root, json_integer(3)); const char * json_str = json_dumps(root, JSON_COMPACT); printf("Content-Type: application/json\r\n\r\n"); printf("%s", json_str); json_decref(root); free(json_str); return 0; }
如上述代碼所示,首先需要包含jansson.h頭文件,在main函數(shù)中創(chuàng)建json數(shù)組,并將三個(gè)整數(shù)1, 2和3添加到數(shù)組中。然后,使用json_dumps函數(shù)將json對(duì)象轉(zhuǎn)換為字符串,并返回一個(gè)char指針。
在字符串格式上,使用JSON_COMPACT格式來去除換行符和空格。然后就可以使用printf函數(shù)將數(shù)據(jù)發(fā)送給前端。最后,使用json_decref函數(shù)釋放json對(duì)象,并使用free函數(shù)釋放json字符串。
這樣,前端框架就可以接收到c語言中傳遞的JSON數(shù)組,然后進(jìn)行相應(yīng)的處理。