RpcRequest.from
A type-safe interface to build a JSON-RPC request object as per the JSON-RPC 2.0 specification.
Imports
Named
import { RpcRequest } from 'ox'
Examples
import { RpcRequest, RpcResponse } from 'ox'
// 1. Build a request object.
const request = RpcRequest.from({
id: 0,
method: 'eth_estimateGas',
params: [
{
from: '0xd2135CfB216b74109775236E36d4b433F1DF507B',
to: '0x0D44f617435088c947F00B31160f64b074e412B4',
value: '0x69420',
},
],
})
// 2. Send the JSON-RPC request via HTTP.
const gas = await fetch('https://1.rpc.thirdweb.com', {
body: JSON.stringify(request),
headers: {
'Content-Type': 'application/json',
},
method: 'POST',
})
.then((response) => response.json())
// 3. Parse the JSON-RPC response into a type-safe result.
.then((response) => RpcResponse.parse(response, { request }))
Definition
function from<methodName>(
options: from.Options<methodName>,
): from.ReturnType<methodName>
Source: src/core/RpcRequest.ts
Parameters
options
- Type:
from.Options<methodName>
JSON-RPC request options.
options.Request
- Type:
{ method: methodName; }
options.id
- Type:
number
options.method
- Type:
methodName
options.params
- Type:
unknown
- Optional
Return Type
The fully-formed JSON-RPC request object.
from.ReturnType<methodName>