我是JSON和jansson的新手。我正在尝试使用jansson库在JSON中创建消息并使用UDP发送。这需要在字节数组中。消息的缓冲区和长度(以字节为单位)。我尝试了json_object_size()。但是它只返回对象中元素的数量。请给我建议一条前进的道路。
json_t *messagebody = json_object();
json_object_set_new(messagebody, "request_id", request_id);
json_object_set_new(messagebody, "process_id", json_string(process_id));
json_object_set_new(messagebody, "process_server_id", json_string(process_server_id));
json_object_set_new(messagebody, "ip_address", json_string(my_ip_address));
json_object_set_new(messagebody, "action", action);
看来你只是打电话char *json_dumps(const json_t *json, size_t flags)
。
这将给您一个char *到一个表示编码的json数据的终止为null的字符串。完成后,您必须释放它。要获得以字节为单位的长度,您应该可以简单地在结果上使用strlen()。
这些标志在API参考的“编码”下进行了说明。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句