JSON是一种轻量级的数据交换格式。在C Web Service的开发过程中,JSON数据常常被用来传输和解析数据。
{ "name": "张三", "age": 20, "gender": "男" }
以上是一个简单的JSON数据对象,包含了三个属性:姓名、年龄和性别。在C Web Service中,我们可以使用JSON库来操作JSON数据对象。
#include "json-c/json.h" int main() { char *json_string = "{ \"name\": \"张三\", \"age\": 20, \"gender\": \"男\" }"; struct json_object *obj = json_tokener_parse(json_string); printf("Name: %s\n", json_object_get_string(json_object_object_get(obj, "name"))); printf("Age: %d\n", json_object_get_int(json_object_object_get(obj, "age"))); printf("Gender: %s\n", json_object_get_string(json_object_object_get(obj, "gender"))); json_object_put(obj); return 0; }
以上是一个简单的JSON解析代码示例。使用json_tokener_parse函数将JSON字符串转换成JSON对象,然后根据属性名读取属性值并打印到控制台上。
除此之外,C Web Service中还可以使用JSON库来生成JSON数据对象,以便传输数据。
#include "json-c/json.h" int main() { struct json_object *obj = json_object_new_object(); json_object_object_add(obj, "name", json_object_new_string("张三")); json_object_object_add(obj, "age", json_object_new_int(20)); json_object_object_add(obj, "gender", json_object_new_string("男")); const char* json_string = json_object_to_json_string(obj); printf("%s\n", json_string); json_object_put(obj); return 0; }
以上是一个简单的JSON生成代码示例。使用json_object_new_object函数创建一个JSON对象,然后使用json_object_object_add函数添加属性和属性值,最后将JSON对象转换成JSON字符串并打印到控制台上。