Unleash awesomeness. Private packages, team management tools, and powerful integrations. Get started with npm Orgs »

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

Keywords

install

npm i antpb

Downloadsweekly downloads

143

version

1.0.0

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability