🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more
Socket
DemoInstallSign in
Socket

websocket-rpc-protocol

Package Overview
Dependencies
Maintainers
1
Versions
31
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

websocket-rpc-protocol - npm Package Compare versions

Comparing version

to
0.1.5

2

package.json
{
"name": "websocket-rpc-protocol",
"version": "0.1.4",
"version": "0.1.5",
"description": "A JSON RPC protocol for working over websockets. Sheds the weight of JSON RPC to simplify argument names and adds features.",

@@ -5,0 +5,0 @@ "scripts": {

@@ -5,4 +5,9 @@ // Exposes an API to a websocket endpoint using the protocol described in PROTOCOL.md

let api;
let preMessages = [];
socket.addEventListener('message', onMessage);
socket.addEventListener('close', close);
try {
api = await apiFactory(thisApi);
preMessages.forEach(processMessage);
preMessages = null;
}

@@ -12,6 +17,4 @@ catch (err) {

send({ err: err.message });
socket.close();
close();
}
socket.addEventListener('message', onMessage);
socket.addEventListener('close', close);
send({ ts: Date.now(), v: api.getVersion?.() });

@@ -28,5 +31,9 @@ return thisApi;

socket.removeEventListener('close', close);
try {
socket.close();
}
catch (err) { }
}
function onMessage(event) {
processMessage('' + event.data);
api ? processMessage('' + event.data) : preMessages.push('' + event.data);
}

@@ -33,0 +40,0 @@ async function processMessage(message) {

@@ -17,13 +17,16 @@ import { Signal } from 'easy-signal';

let api: API;
let preMessages: string[] = [];
socket.addEventListener('message', onMessage);
socket.addEventListener('close', close);
try {
api = await apiFactory(thisApi);
preMessages.forEach(processMessage);
preMessages = null;
} catch (err) {
console.error(err);
send({ err: err.message });
socket.close();
close();
}
socket.addEventListener('message', onMessage);
socket.addEventListener('close', close);
send({ ts: Date.now(), v: (api.getVersion as APIMethod)?.() });

@@ -44,6 +47,9 @@

socket.removeEventListener('close', close);
try {
socket.close();
} catch(err) {}
}
function onMessage(event: MessageEvent) {
processMessage('' + event.data);
api ? processMessage('' + event.data) : preMessages.push('' + event.data);
}

@@ -50,0 +56,0 @@