• Stars
    star
    123
  • Rank 290,145 (Top 6 %)
  • Language
    C++
  • License
    MIT License
  • Created over 13 years ago
  • Updated over 5 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Decode protobuf to json format

1. Introducton:

Decode protobuf to json format

Build Status

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)