Ninety-nine Pitchers of Malt
    Have ideas to improve npm?Join in the discussion! »

    msgpack-rpc-lite
    TypeScript icon, indicating that this package has built-in type declarations

    1.0.2 • Public • Published

    msgpack-rpc-lite

    npm version Build Status Codacy Badge Codacy Badge codecov Dependency Status Known Vulnerabilities

    Implementation of MessagePack-RPC with msgpack-lite

    Usage

    • createServer([serverOptions][, codecOptions])

      Creates a new MessagePack-RPC server.

    • Server event: method

      Emitted when a new connection is made.

      • <Array> request parameters.
      • <Function> If a request is received, a callback function is passed.
        • To return the results to the client, pass null as the first argument and response parameters as the second argument.
        • If an error occurs, pass it to the first argument.
    • createClient(port[, host][, timeout][, codecOptions])

      Initiates a MessagePack-RPC client.

      • port <number> Port the socket should connect to.
      • host <string> Host the socket should connect to. Default: 'localhost'
      • timeout <number> Sets the socket to timeout after timeout milliseconds of inactivity on the socket. If timeout is 0, then the existing idle timeout is disabled. Default: 0
      • codecOptions <Object>
      • Return: <Client>
    • client.request(method[, ...args])

      • method <string>
      • Return: <Promise>
    • client.notify(method[, ...args])

      • method <string>
      • Return: <Promise>

    Examples

    • Server

      const rpc = require('msgpack-rpc-lite');
      const server = rpc.createServer().on('say', (params, callback) => {
          const [ message ] = params; 
          callback(null, `hello ${ message }`);
      });
      server.listen(9199);
    • Client

      const rpc = require('msgpack-rpc-lite');
       
      const client = rpc.createClient(9199, 'localhost');
      client.request('say', [ 'world' ]).then(([ response ]) => {
          console.log(response); // hello world
      })

    Compatibility Mode

    Set true to useraw of encode/decode of Codec-options.

    • Client
      const codecOptions = { encode: { useraw: true }, decode: { useraw: true } };
       
      const client = rpc.createClient(9199, 'localhost', 0, codecOptions);

    See also:

    See also

    Install

    npm i msgpack-rpc-lite

    DownloadsWeekly Downloads

    7

    Version

    1.0.2

    License

    MIT

    Unpacked Size

    49.2 kB

    Total Files

    16

    Last publish

    Collaborators

    • avatar