cbor-js-unofficial

0.1.0-a4 • Public • Published

cbor-js

The Concise Binary Object Representation (CBOR) data format (RFC 7049) implemented in pure JavaScript.

This is an unofficial branch of a CBOR implementation by Patrick Gansterer (paroga) that supports Float 16 and 32 encoding by default, implements an exact accounting buffer allocation strategy, and adds an option for allowing extraneous bytes at the end of a chunk.

API

The CBOR-object provides the following two functions:

CBOR.decode(data)

Take the ArrayBuffer object data and return it decoded as a JavaScript object.

CBOR.encode(data)

Take the JavaScript object data and return it encoded as a ArrayBuffer object.

Usage

Include cbor.js in your or HTML page:

<script src="path/to/cbor.js" type="text/javascript"></script>

Then you can use it via the CBOR-object in your code:

var initial = { Hello: "World" };
var encoded = CBOR.encode(initial);
var decoded = CBOR.decode(encoded);

After running this example initial and decoded represent the same value.

Combination with WebSocket

The API was designed to play well with the WebSocket object in the browser:

var websocket = new WebSocket(url);
websocket.binaryType = "arraybuffer";
...
websocket.onmessage = function(event) {
  var message = CBOR.decode(event.data);
};
...
websocket.send(CBOR.encode(message));

Readme

Keywords

Package Sidebar

Install

npm i cbor-js-unofficial

Weekly Downloads

5

Version

0.1.0-a4

License

MIT

Last publish

Collaborators

  • tyoung86