If you know what is JSON and how its work, you can see how much Proto-Buf is easy.
What you dont know you think its hard but when you start to test and working on, you will see its easy.
- First example implenment using JSON at
json.js
file, - And next same example implenment using Protobuf inside
protobuf.js
file.
$ protoc --js_out=import_style=commonjs,binary:. employees.proto
[max@workstation grpc-series-protobuf-js]$ ls -al
Size | Filename | Method |
---|---|---|
123 | employees.json | JSON |
48 | employees.bin | Protobuf |
[max@workstation grpc-series-protobuf-js]$ node protobuf.js
Ali name is: ALI
Reza name is: REZA
Javad name is: JAVAD
Data: 1001,ALI,50001,1002,REZA,50002,1003,JAVAD,50003
Binary: 10,13,8,233,7,18,3,65,76,73,29,0,81,67,71,10,14,8,234,7,18,4,82,69,90,65,29,0,82,67,71,10,15,8,235,7,18,5,74,65,86,65,68,29,0,83,67,71
Read data from bytes: 1001,ALI,50001,1002,REZA,50002,1003,JAVAD,50003
[max@workstation grpc-series-protobuf-js]$ node json.js
Ali name is: ALI
Reza name is: REZA
Javad name is: JAVAD
Data: [object Object],[object Object],[object Object]
JSON: [{"id":1001,"name":"ALI","salary":50001},{"id":1002,"name":"REZA","salary":50002},{"id":1003,"name":"JAVAD","salary":50003}]
Read data from JSON: [object Object],[object Object],[object Object]
You need to install protoc
program on your system, you can download it from https://github.com/protocolbuffers/protobuf/releases depends on your Operation system. whatever your system is Liunx, Windows or OSX.
Next you can run bin/protoc
by typing its full path.
For example:
$ /to-the-path/bin/protoc --js_out=import_style=commonjs,binary:. /your-source-path/employees.proto
If you want to install/setup it globally you have to put bin
and include
directory to your system directory.
You need to copy these directory to the system dir:
bin
->/usr/bin/
include
->/usr/include/
Maybe, A command to help you:
$ cp -a * /usr/
If you want to learn protobuf funcitonally deeply, you can check and read the generated file by Protoc at employees_pb.js
. c