吕君喜 406d880ac6 first | il y a 3 ans | |
---|---|---|
.. | ||
build | il y a 3 ans | |
prebuilds | il y a 3 ans | |
src | il y a 3 ans | |
LICENSE | il y a 3 ans | |
README.md | il y a 3 ans | |
binding.gyp | il y a 3 ans | |
fallback.js | il y a 3 ans | |
index.js | il y a 3 ans | |
package.json | il y a 3 ans |
bufferutil
is what makes ws
fast. It provides some utilities to efficiently
perform some operations such as masking and unmasking the data payload of
WebSocket frames.
npm install bufferutil --save-optional
The --save-optional
flag tells npm to save the package in your package.json
under the optionalDependencies
key.
The module exports two functions.
bufferUtil.mask(source, mask, output, offset, length)
Masks a buffer using the given masking-key as specified by the WebSocket protocol.
source
- The buffer to mask.mask
- A buffer representing the masking-key.output
- The buffer where to store the result.offset
- The offset at which to start writing.length
- The number of bytes to mask.'use strict';
const bufferUtil = require('bufferutil');
const crypto = require('crypto');
const source = crypto.randomBytes(10);
const mask = crypto.randomBytes(4);
bufferUtil.mask(source, mask, source, 0, source.length);
bufferUtil.unmask(buffer, mask)
Unmasks a buffer using the given masking-key as specified by the WebSocket protocol.
buffer
- The buffer to unmask.mask
- A buffer representing the masking-key.'use strict';
const bufferUtil = require('bufferutil');
const crypto = require('crypto');
const buffer = crypto.randomBytes(10);
const mask = crypto.randomBytes(4);
bufferUtil.unmask(buffer, mask);