在JavaScript中使用Google协议缓冲区是一个不错的选择,还是对JSON更好?
如果有人能给我一个关于JavaScript中协议缓冲区实现的简单示例,那也很好。Google网站上的文档很少。
Answers:
[edit] Google的协议缓冲区的开源实现可在github上找到
正式的protobuf项目仅支持Java,C ++和Python。不是Javascript。
根据该项目的Wiki,有三个项目将协议缓冲区移植到Javascript。
Protobuf.js是最新的。protobuf-js已有两年未更新,因此,我赞成Protobuf.js。
问题仍然是“为什么”?:protobuf可能会更小,尤其是在传输大量数值时,但是JSON是JS空间中更常见的协议,并且可能得到更好的支持,并且更易于集成到其他工具中。
更新(2016年7月28日):已 发布3.0.0版-除某些其他功能外,还支持Javascript和其他语言。
谷歌最近在protobufs中添加了对JS的alpha支持:https : //github.com/google/protobuf/releases/tag/v3.0.0-beta-2
用法:
protoc -I=$SRC_DIR --js_out=$DST_DIR $SRC_DIR/addressbook.proto
发行文档中的屏幕截图:
Protobuf 3.0.0已发布:https: //github.com/google/protobuf/releases/tag/v3.0.0
并且它本机支持JavaScript。基本信息在公告中。
我们将尽快进行调查。
尝试Protostuff!
我在配置时有些困难,但是我确定这更多的是我的问题。您可以在/从JSON序列化/反序列化一个原型/原型消息。我正处于使用此功能的初期阶段,但到目前为止看起来很有希望。