zoukankan      html  css  js  c++  java
  • JavaScript 生成 对应的protobuf 对象

    在js中 使用 protobuf
    正常情况下 下载对应的protoc 文件
    下载地址:https://repo1.maven.org/maven2/com/google/protobuf/protoc/

      messagebody.proto
    
      syntax = "proto3"; 
      message messagebody{
          //工厂 3G
          string factory = 1; 
          //设备id 3918173069
          string deviceId = 2; 
          //内容长度的长度   消息类型+消息主体 = 内容长度
          string length = 3; 
          //消息类型
          string type = 4; 
          //消息主体
          string body = 5; 
          //时间戳
          string timeStamp = 6; 
          //发送人
          string sender = 7; 
          //接收人
          string receiver = 8; 
          //用户组编号
          string groupId =9;
      }
    
      先使用对应的方法生成对应 js文件
      位置/protoc.exe --js_out=import_style=commonjs,binary:. jsMessageBody.proto
    
      使用时 需要使用对应的 node进行处理
       初始化node    npm init
      安装使用到的数据
      npm install -g require       (对库文件的引用库) 
      npm install -g browserify    (这个是用来打包成前端使用的js文件)
      npm install  google-protobuf
            
      node 初始化后  在创建 exports.js
                var MessageBody = require('./MessageBody_pb');  
    
                module.exports = {  
                    DataProto: MessageBody  
                }  
      
      保存后 执行  browserify  exports.js > MessageBody.js
      生成后的文件  就可以直接使用 
            //发送的内容给服务器
                var content = new proto.messagebody();
                content.setFactory("3G");//厂商 
                content.setLength("0009");//长度 
                content.setBody("0,150,56");//内容
                  
                 var bytes = content.serializeBinary();
                //解码操作
                var enChatReqBody = proto.messagebody.deserializeBinary(bytes);
                console.log("解码后:" + enChatReqBody);

        吾之爱,心之念。
               携子手,到白头。

  • 相关阅读:
    String、StringBuilder、StringBuffer区别
    深拷贝和浅拷贝
    二叉查找树(一)
    二叉树的遍历
    二叉树
    递归
    队列

    数据结构基础
    视图
  • 原文地址:https://www.cnblogs.com/JC-0527/p/13049990.html
Copyright © 2011-2022 走看看