cbor-js-unofficial
v0.1.0-a4
Published
(UNOFFICIAL BRANCH) The Concise Binary Object Representation (CBOR) data format (RFC7049) implemented in pure JavaScript.
Downloads
18
Readme
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));