0.11.0 • Published 4 years ago

@erebos/rpc-stream v0.11.0

Weekly downloads
9
License
MIT
Repository
github
Last release
4 years ago

rpc-stream

Class extending rpc-base to handle stateful JSON-RPC 2.0 calls.

See transport-ipc, transport-ws-browser and transport-ws-node for possible transports and rpc-request to handle stateless JSON-RPC 2.0 calls.

Installation

yarn add @erebos/rpc-stream

Usage

import StreamRPC from '@erebos/rpc-stream'
import ipcTransport from '@erebos/transport-ipc'

class MyAPI extends StreamRPC {
  constructor(path: string) {
    super(ipcTransport(path))
  }

  getUser(id: string): Promise<{ name: string }> {
    return this.request('getUser', [id])
  }
}

const api = new MyAPI('/path/to/socket')
api.getUser('1234')

API

See the BaseRPC API for inherited methods and properties.

new StreamRPC()

Arguments

  1. subject: Subject: a RxJS Subject handling communication with the server.

.request()

Arguments

  1. method: string
  2. params: T = any

Returns Promise<R = any>

License

MIT