A general flow binary parser and encoder
npm i binaly
const {BinEncoder} = require('binaly');
const encoder = new BinEncoder();
const data = encoder.encode(Buffer.from([116, 101, 115, 116]), Buffer.from([48]));
console.log(data);
// ->
// <Buffer 30 04 00 00 00 74 65 73 74>
const {BinEncoder, LengthVariable} = require('binaly');
const encoder = new BinEncoder({lengthSize: LengthVariable.encode()});
const data = encoder.encode(Buffer.from([116, 101, 115, 116]), Buffer.from([48]));
console.log(data);
// ->
// <Buffer 30 04 74 65 73 74>
const {BinParser, LengthFixed} = require('binaly');
const parser = new BinParser({
headerSize: 1,
// lengthSize: LengthFixed.decode(4),
});
parser.on('packet', packet => {
console.log(packet);
// =>
// {
// length: 4,
// payload: <Buffer 74 65 73 74>,
// header: <Buffer 30>
// }
});
parser.parse(Buffer.from([48, 4, 0, 0, 0, 116, 101, 115, 116]));
const {BinParser, LengthVariable} = require('binaly');
const parser = new BinParser({
headerSize: 1,
lenghSize: LengthVariable.decode(),
});
parser.on('packet', packet => {
console.log(packet);
// =>
// {
// length: 4,
// payload: <Buffer 74 65 73 74>,
// header: <Buffer 30>
// }
});
parser.parse(Buffer.from([48, 4, 116, 101, 115, 116]));
TBD
MIT