JSON-RPC方法
eth_simulateV1:参数、返回值与 CU
在指定区块状态上批量模拟执行调用或交易序列,无需广播上链。
用途
在指定区块状态上批量模拟执行调用或交易序列,无需广播上链。 官方文档
计算单位(CU)与价格
单次调用 CU
20 CU
每百万次调用价格(USD)
$2.00
参数
| 参数名 | 类型 | 说明 |
|---|---|---|
payload | object | 模拟载荷对象:blockStateCalls(必填)为模拟区块数组,每个区块可含 blockOverrides(区块头字段覆盖)、stateOverrides(账户状态覆盖)与 calls(该区块要执行的调用或交易数组);validation(布尔,默认 false)为 true 时执行与普通 EVM 相同的大部分校验,为 false 时按 eth_call 处理;traceTransfers(布尔,默认 false)为 true 时把 ETH 转账作为 ERC-20 Transfer 事件加入日志;returnFullTransactions(布尔)为 true 时返回完整交易对象,否则只返回哈希。 |
block | QUANTITY|TAG|HASH | 可选,模拟所依据的区块号(0x 十六进制数量)、区块哈希或区块标签;默认 'latest'。 |
返回值
- 类型:
ARRAY - 说明: EthSimulateResult:模拟区块对象数组,每个区块包含 number、hash、parentHash、timestamp、gasLimit、gasUsed、baseFeePerGas、feeRecipient 等区块头字段以及 calls 数组;每个调用含 status(0x1 成功、0x0 失败)、returnData、gasUsed、maxUsedGas,成功时含 logs,失败时含 error。
注意事项
开放情况取决于链的方法策略(methods.allow)。未开启该方法的链将返回 -32601 方法未开放(不计费)。
请求示例
export BLOCKVECTRA_API_KEY=rgw_your_api_key
curl -X POST "https://api.blockvectra.com/v1/robinhood_mainnet" \
-H 'Content-Type: application/json' \
-H "x-api-key: $BLOCKVECTRA_API_KEY" \
-d '{
"jsonrpc": "2.0",
"method": "eth_simulateV1",
"params": [
{
"blockStateCalls": [
{
"calls": [
{
"to": "<toAddress>",
"data": "<callData>"
}
]
}
]
},
"latest"
],
"id": 1
}'可用链
除以下链外,其余支持链均可用:BNB Smart Chain (bsc_mainnet)、以太坊 (eth_mainnet)、Ethereum Sepolia (eth_sepolia)、HyperEVM (hyperevm_mainnet)。
相关参考
最后更新: