antpb

1.0.0 • Public • Published

antpb

Protocol Buffers for JavaScript. It from the dcodeIO protobufjs, we modify some files to achieve our need.

NPM version build status Test coverage David deps Known Vulnerabilities npm download

Install

$ tnpm install antpb --save

Usage

  • load all *.proto files in specified directory
const protobuf = require('antpb');
 
const root = protobuf.loadAll('/proto_file_path');
 
const ProtoObj = root.lookup('com.alipay.test.service.ProtoObj');
const map = new Map();
map.set(false, {
  name: 'Peter',
  finalField: '123',
});
 
const req = ProtoObj.create({
  testObj2: {
    name: 'zongyu',
    finalField: '321',
  },
  map3: map,
});
 
const buf = ProtoObj.encode(req).finish();
const ret = ProtoObj.decode(buf); // => { testObj2: { name: 'zongyu', finalField: '321' }, map3: <Map> }
  • load interface schame from JSON file
const protobuf = require('@alipay/protobufjs');
 
const root = protobuf.fromJSON(/proto_json_file_path);
 
...

API

Top API

  • loadAll(protoPath, [options]) load all *.proto files in specified directory
    • {String} protoPath - the proto folder
    • {Object} [options] - optional arguments
  • fromJSON(jsonFile, [root]) load interface schame from JSON file
    • {String} jsonFile - JSON file path
    • {Root} [root] - root node, if it is not provided, will create the new one

Other API

refer: https://github.com/dcodeIO/protobuf.js

Dependents (5)

Package Sidebar

Install

npm i antpb

Weekly Downloads

129

Version

1.0.0

License

MIT

Unpacked Size

28.3 kB

Total Files

9

Last publish

Collaborators

  • gxcsoccer