sz-json-rpc

1.6.1 • Public • Published

sz-json-rpc



JSON-RPC that works on browser.

Installation

  $ npm install sz-json-rpc --save

Example

  • Using json-rpc adapter to send requests.
var webSocket = new WebSocket('ws://localhost:5000');
var ws = new SzJsonRpc().ws(webSocket);
ws.on('open', () => {
  ws.request('ping')((err, response) => {
    if (err) throw err;
    console.log('response', response);
  });
});
ws.on('close', (reason) => {
  // this will not show when onbeforeunload event call .close
  console.log('close', reason);
});
window.onbeforeunload = function() {
  ws.close();
}
  • Using connector to do some tricks like auto reconect, queue requests when socket isn't ready and dispatch when it is live.
const conn = new SzJsonRpc().wsConnection(WebSocket, 'ws://localhost:5000', {
  onWSConnect: (ws) => {
    ws.send('login', {}, (err, response) => {
      if(err)
        console.error(err);
    });
    ws.send('ping', null, (err, response) => {
      console.log(response);
    });
  }
});
 
window.onbeforeunload = function() {
  if (conn.socketReady())
    conn.curSocket.close();
}

Dependents (0)

Package Sidebar

Install

npm i sz-json-rpc

Weekly Downloads

9

Version

1.6.1

License

MIT

Last publish

Collaborators

  • stefanyohansson