1. Introducton:
Decode protobuf to json format
It depends on jansson(https://github.com/akheron/jansson) to pack json
Support all type of protobuf Message (example: see test/person.proto) and binary bytes(jansson does not support binary bytes) will be translated to hex sequence
2. Install
This library depends on jansson(http://www.digip.org/jansson/)
We assumed you have installed protobuf
1) install jansson
wget "http://www.digip.org/jansson/releases/jansson-2.1.tar.gz "
tar -zxvf jansson-2.1.tar.gz
cd jansson-2.1
./configure
make
sudo make install
2)install pb2json (is simple)
make
sudo make install
3. Test & example
cd $src/test
run make to generate object files
./runtest to see the result
4. Usage
You can refer to $src/test/test_json.cpp
It is pretty simple to use ,and we just have one API:
char *pb2json(Message *msg,const char *buf, int len);
return json string if sucess ,NULL if failed,it should be freed by caller
msg : instance of class generated by protoc
buf : binary content of protobuf
len : length of buf
There is another variance:
char *pb2json(Message &msg)