[SignalingServer] Optimize dependent modules
[platform/framework/web/wrtjs.git] / device_home / node_modules / socket.io-parser / Readme.md
1
2 # socket.io-parser
3
4 [![Build Status](https://secure.travis-ci.org/socketio/socket.io-parser.svg?branch=master)](http://travis-ci.org/socketio/socket.io-parser)
5 [![NPM version](https://badge.fury.io/js/socket.io-parser.svg)](http://badge.fury.io/js/socket.io-parser)
6
7 A socket.io encoder and decoder written in JavaScript complying with version `4`
8 of [socket.io-protocol](https://github.com/socketio/socket.io-protocol).
9 Used by [socket.io](https://github.com/automattic/socket.io) and
10 [socket.io-client](https://github.com/automattic/socket.io-client).
11
12 ## Parser API
13
14   socket.io-parser is the reference implementation of socket.io-protocol. Read
15   the full API here:
16   [socket.io-protocol](https://github.com/learnboost/socket.io-protocol).
17
18 ## Example Usage
19
20 ### Encoding and decoding a packet
21
22 ```js
23 var parser = require('socket.io-parser');
24 var encoder = new parser.Encoder();
25 var packet = {
26   type: parser.EVENT,
27   data: 'test-packet',
28   id: 13
29 };
30 encoder.encode(packet, function(encodedPackets) {
31   var decoder = new parser.Decoder();
32   decoder.on('decoded', function(decodedPacket) {
33     // decodedPacket.type == parser.EVENT
34     // decodedPacket.data == 'test-packet'
35     // decodedPacket.id == 13
36   });
37
38   for (var i = 0; i < encodedPackets.length; i++) {
39     decoder.add(encodedPackets[i]);
40   }
41 });
42 ```
43
44 ### Encoding and decoding a packet with binary data
45
46 ```js
47 var parser = require('socket.io-parser');
48 var encoder = new parser.Encoder();
49 var packet = {
50   type: parser.BINARY_EVENT,
51   data: {i: new Buffer(1234), j: new Blob([new ArrayBuffer(2)])}
52   id: 15
53 };
54 encoder.encode(packet, function(encodedPackets) {
55   var decoder = new parser.Decoder();
56   decoder.on('decoded', function(decodedPacket) {
57     // decodedPacket.type == parser.BINARY_EVENT
58     // Buffer.isBuffer(decodedPacket.data.i) == true
59     // Buffer.isBuffer(decodedPacket.data.j) == true
60     // decodedPacket.id == 15
61   });
62
63   for (var i = 0; i < encodedPackets.length; i++) {
64     decoder.add(encodedPackets[i]);
65   }
66 });
67 ```
68 See the test suite for more examples of how socket.io-parser is used.
69
70
71 ## License
72
73 MIT