使用protobufjs

时间:2019-03-07 14:21:48

标签: javascript node.js protobufjs

我的情况是我收到JSON数据(字符串化的版本),并且需要将其转换为protobufjs中的JSON对象。 有一些令人费解的错误。  1.验证方法仅将其作为对象接受。  2.将JSON.strinigify()转换为字符串对象也无济于事。

protobuf.load("awesome.proto", function(err, root) {
  if (err) {
    console.log(err);
  } else {
    var AwesomeMessage = root.lookupType("awesomepackage.AwesomeMessage");
    var payload = { awesomeField: "AwesomeString" };
    var data = JSON.stringify(payload);
    var err = AwesomeMessage.verify(data);
    if(err){
      console.log(err);
    }
    var encode = AwesomeMessage.encode(data).finish();
    var decode = AwesomeMessage.decode(encode);
    console.log(decode)
  }
});


//awesome.proto file name
package awesomepackage;
syntax = "proto3";

message AwesomeMessage {
    string awesome_field = 1;
};

我的问题:

  • 有没有一种方法可以将JSON.stringify()数据转换为protobufjs中的JSON对象。
  • 我还注意到JSON.stringify()将JSON数据转换为字符(即,它甚至将“ \ n”转换为'\','\ n')。 [就我而言,JSON数据将没有\ n ]
  • 问题是当我通过服务接收数据时 串起来然后发给我。

任何建议都会有很大帮助。

0 个答案:

没有答案