The jsonrpc
application is a JSON-RPC proxy that can cache, filter, throttle, meter and authenticate requests to a JSON-RPC endpoint.
The application is configured via a toml file, described below:
Examples
Proxy a JSON-RPC endpoint publicly
You set up a node and want to proxy. You expose all JSON-RPC methods on your node but only want to expose the eth_
namespace publicly, with HTTP Basic authentication:
endpointUrl="http://192.168.1.2:8545" # IP of your node
allowedMethods=["eth_"]
cacheEnabled=true
cachedMethods=["eth_"]
cacheStoragePath="/var/jsonrpccache" # Cache location
Local development
You have a local development and you’re using a service such as Infura or Alchemy, but you want to work without calling the service constantly.
endpointUrl="https://example.com:8545/?token=mytoken" # service URL
cacheEnabled=true
cachedMethods=[""] # All methods are cached
cacheStoragePath="/var/jsonrpccache" # Cache location
allowedMethods=[""] # All methods are enabled