root / HServer / 00.Server / 00.Program / node_modules / socket.io-parser / Readme.md
이력 | 보기 | 이력해설 | 다운로드 (2.05 KB)
1 |
|
---|---|
2 |
# socket.io-parser |
3 |
|
4 |
[](http://travis-ci.org/socketio/socket.io-parser) |
5 |
[](http://badge.fury.io/js/socket.io-parser) |
6 |
|
7 |
A socket.io encoder and decoder written in JavaScript complying with version `3` |
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_EVENTEVENT |
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 |