在Windows上使用NodeJS的Protobuf

我想从Windows的NodeJS脚本发送简单的TCP消息到设备(Karotz)。

  • NodeJS正确安装了一个工作
  • TCP连接工作
  • 这是我的.proto文件(http://wiki.karotz.com/index.php/Voos-message.proto)
  • 我使用谷歌的protoc将其编译为.desc

我不知道如何build立我的消息发送到设备?

  • 我阅读了Google说明
  • 和protobuff_for_node等分叉

但我不明白如何在Windows上安装它。 由于本土的图书馆员似乎很复杂。

有没有死的简单的JavaScript图书馆读取.desc架构和build立消息? 没有本地代码或复杂的东西?

如果你使用的是Node.js,那么只要使用protobuf库的NPM包版本就可以了,它会为你构建它,假设你的机器上有一个C ++编译器:

> npm install protobuf 

建立你的消息和解析和现有的消息:

 var Schema = require('protobuf').Schema; var readFile = require('fs').readFileSync; var schema = new Schema(readFile(__dirname+'/Voos-message.desc')); var VooMsg = schema['net.violet.voos.message.VoosMsg']; // Convert to protobuf format var msg = VooMsg.serialize({id:1, correlationId: 'hello'}); // Read it back var outMsg = VooMag.parse(msg); 

protobuf库工作得很好,易于使用。 但是,如果你想要一个纯JS版本,看看: ProtoBufJS