web3-providers-ws

Module to handle web3 RPC connections over WebSockets.

Usage no npm install needed!

<script type="module">
  import web3ProvidersWs from 'https://cdn.skypack.dev/web3-providers-ws';
</script>

README

web3-providers-ws

NPM Package Dependency Status Dev Dependency Status

This is a websocket provider sub-package for web3.js.

Please read the documentation for more.

Installation

Node.js

npm install web3-providers-ws

Usage

const Web3WsProvider = require('web3-providers-ws');

const options = {
    timeout: 30000, // ms

    // Useful for credentialed urls, e.g: ws://username:password@localhost:8546
    headers: {
      authorization: 'Basic username:password'
    },

    clientConfig: {
      // Useful if requests are large
      maxReceivedFrameSize: 100000000,   // bytes - default: 1MiB
      maxReceivedMessageSize: 100000000, // bytes - default: 8MiB

      // Useful to keep a connection alive
      keepalive: true,
      keepaliveInterval: 60000 // ms
    },

    // Enable auto reconnection
    reconnect: {
        auto: true,
        delay: 5000, // ms
        maxAttempts: 5,
        onTimeout: false
    }
};

const ws = new Web3WsProvider('ws://localhost:8546', options);

Additional client config options can be found here.

Types

All the TypeScript typings are placed in the types folder.