All Projects → websockets → Bufferutil

websockets / Bufferutil

Licence: mit
WebSocket buffer utils

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Bufferutil

Websocketstream Explainer
Explainer for the WebSocketStream JavaScript API
Stars: ✭ 75 (-9.64%)
Mutual labels:  websocket
Gowebsocket
Gorilla websockets based simplified websocket-client implementation in GO.
Stars: ✭ 77 (-7.23%)
Mutual labels:  websocket
Angular Websocket
↖️ The missing Angular WebSocket module for connecting client applications to servers by @AngularClass
Stars: ✭ 1,242 (+1396.39%)
Mutual labels:  websocket
Just An Email
App to share files & texts between your devices without installing anything
Stars: ✭ 75 (-9.64%)
Mutual labels:  websocket
Bilibili danmuji
(Bilibili)B站直播礼物答谢、定时广告、关注感谢,自动回复工具,房管工具,自动打卡,Bilibili直播弹幕姬(使用websocket协议),java版B站弹幕姬,基于springboot。
Stars: ✭ 76 (-8.43%)
Mutual labels:  websocket
Ptt Client
A Node.js/Browser client for fetching data from ptt.cc
Stars: ✭ 78 (-6.02%)
Mutual labels:  websocket
Wechat Pc Hook Ws
微信PcHooker websocket api
Stars: ✭ 74 (-10.84%)
Mutual labels:  websocket
Wstest
go websocket client for unit testing of a websocket handler
Stars: ✭ 83 (+0%)
Mutual labels:  websocket
Huobi golang
Go SDK for Huobi Spot API
Stars: ✭ 76 (-8.43%)
Mutual labels:  websocket
Laplace
Laplace is an open-source project to enable screen sharing directly via browser. Based on WebRTC for low latency peer-to-peer connections, and WebSocket implemented in golang for signaling.
Stars: ✭ 81 (-2.41%)
Mutual labels:  websocket
Wscelery
Real time celery monitoring using websockets
Stars: ✭ 76 (-8.43%)
Mutual labels:  websocket
Deno Websocket
🦕 A simple WebSocket library like ws of node.js library for deno
Stars: ✭ 74 (-10.84%)
Mutual labels:  websocket
Bilibili Live Ws
Bilibili live WebSocket/tcp API
Stars: ✭ 79 (-4.82%)
Mutual labels:  websocket
Gowog
Gowog, Golang based Web multiplayer Online Game
Stars: ✭ 75 (-9.64%)
Mutual labels:  websocket
Laverna
Laverna is a JavaScript note taking application with Markdown editor and encryption support. Consider it like open source alternative to Evernote.
Stars: ✭ 8,770 (+10466.27%)
Mutual labels:  websocket
Useful Tools
A list of useful tools and programs for developers, DevOps and SysAdmins
Stars: ✭ 74 (-10.84%)
Mutual labels:  utilities
Voten
The code that powers voten.co
Stars: ✭ 1,215 (+1363.86%)
Mutual labels:  websocket
Nps Utils
Utilities for http://npm.im/nps (npm-package-scripts)
Stars: ✭ 83 (+0%)
Mutual labels:  utilities
Sequelize Test Helpers
A collection of utilities to help with unit-testing Sequelize models
Stars: ✭ 83 (+0%)
Mutual labels:  utilities
Deepspeech Websocket Server
Server & client for DeepSpeech using WebSockets for real-time speech recognition in separate environments
Stars: ✭ 79 (-4.82%)
Mutual labels:  websocket

bufferutil

Version npm Linux/macOS Build Windows Build

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.

Installation

npm install bufferutil --save-optional

The --save-optional flag tells npm to save the package in your package.json under the optionalDependencies key.

API

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.

Arguments

  • 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.

Example

'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.

Arguments

  • buffer - The buffer to unmask.
  • mask - A buffer representing the masking-key.

Example

'use strict';

const bufferUtil = require('bufferutil');
const crypto = require('crypto');

const buffer = crypto.randomBytes(10);
const mask = crypto.randomBytes(4);

bufferUtil.unmask(buffer, mask);

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].