十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Skandha RPC API 完全参考手册:eth_、skandha_ 与 debug_ 方法全清单指南

Skandha RPC API 完全参考手册:eth_、skandha_ 与 debug_ 方法全清单指南 Skandha RPC API 完全参考手册eth_、skandha_ 与 debug_ 方法全清单指南【免费下载链接】skandhaA modular typescript implementation of ERC4337 (Account Abstraction) bundler client.项目地址: https://gitcode.com/gh_mirrors/sk/skandhaSkandha 是一个模块化的 TypeScript 实现的 ERC-4337Account Abstraction账户抽象Bundler 客户端。本文是 Skandha RPC API 参考手册完整列出 Skandha 支持的eth_、skandha_与debug_三类 RPC 方法帮助你快速理解每类方法的用途、调用限制与最佳实践是新手接入 Skandha Bundler 的必备清单。 Skandha RPC 接口概览Skandha 启动后会在14337 端口提供 JSON-RPC 服务访问地址为http://localhost:14337/rpc/HTTP 接口POST /rpc/支持单请求或数组批量请求WebSocket 接口GET /rpc/WS 升级用于实时订阅事件所有 RPC 请求与分发的核心逻辑位于 packages/api/src/app.ts而全部方法名常量集中定义在 packages/api/src/constants.ts共三大命名空间命名空间用途数量eth_/web3_EIP-4337 标准 Bundler 方法6 1skandha_Skandha 自定义扩展方法6debug_bundler_调试与运维管理方法11 eth_ 命名空间EIP-4337 标准方法这是 UserOp 全生命周期的核心 API源码见 packages/api/src/modules/eth.ts。eth_sendUserOperation作用向 Bundler 内存池提交一笔 UserOperation参数userOp完整 UserOperation 结构所有字段为 hex 值空字节如空 initCode 必须写0xentryPoint返回userOpHashUserOperation 哈希要点entryPoint 必须是eth_supportedEntryPoints返回的之一eth_estimateUserOperationGas作用估算 UserOperation 所需的 gas 限额参数userOpentryPoint可选stateOverrides返回preVerificationGas、callGasLimit、verificationGasLimit要点signature 字段会被忽略但仍需填写半有效签名如长度正确的占位签名eth_getUserOperationByHash作用根据哈希查询已上链的 UserOperation返回未上链时返回null已上链则返回完整 UserOperation并附加entryPoint、blockNumber、blockHash、transactionHasheth_getUserOperationReceipt作用根据哈希查询 UserOperation 回执含成功/失败状态、实际 gas 消耗、内嵌事件日志返回未上链时返回nulleth_supportedEntryPoints 与 eth_chainIdeth_supportedEntryPoints返回客户端支持的 EntryPoint 地址数组第一个元素是客户端偏好的 EntryPointeth_chainId返回 EIP-155 链 IDweb3_clientVersion返回客户端版本号可用于兼容性探测。 skandha_ 命名空间自定义扩展方法Skandha 独有的增强能力源码见 packages/api/src/modules/skandha.ts。skandha_getGasPrice获取当前建议 gas 价格方便钱包端设置maxFeePerGas/maxPriorityFeePerGas。配置中gasPriceMarkup参数可为其附加百分比加成。skandha_feeHistory作用查询历史区块中 UserOp 的实际手续费分布参数entryPoint、blockCount区块数量、newestBlock最新区块号或latest返回每笔 UserOp 的userOpHash、maxPriorityFeePerGas等帮助钱包端动态定价skandha_userOperationStatus作用根据哈希查询 UserOperation 当前状态状态流转pending内存池→Submitted已打包提交→onChain已上链示例详见官方文档 docs/skandha_userOperationStatus.mdskandha_config返回当前 Bundler 的运行配置EntryPoint、relayer 余额、gas 策略等该接口跳过统一的 hex 序列化直接返回原始值。skandha_subscribe 与 skandha_unsubscribe仅 WebSocket作用实时订阅 Bundler 内部事件支持事件类型事件含义pendingUserOpsUserOp 通过验证并进入内存池submittedUserOpsUserOp 已提交上链、被回滚或被移出内存池onChainUserOpsUserOp 成功上链确认ping心跳保活skandha_unsubscribe传入订阅 ID 即可取消订阅完整请求/响应示例见 docs/skandha_subscribe.md订阅逻辑源码在 packages/api/src/modules/subscription.tsskandha_connectedPeers返回当前节点已连接的 P2P 对等节点列表Skandha 支持基于 libp2p 的共享内存池。 debug_ 命名空间调试与运维方法对应 EIP-4337 规范的debug命名空间源码见 packages/api/src/modules/debug.ts。⚠️安全提示所有debug_bundler_*方法仅对localhost127.0.0.1或持有SKANDHA_ADMIN_KEY环境变量的客户端开放切勿在公网直接暴露。打包行为控制方法作用debug_bundler_setBundlingMode设置auto/manual打包模式manual 模式下需显式触发打包debug_bundler_setBundleInterval设置自动打包间隔秒debug_bundler_sendBundleNow立即从内存池构建并执行一笔handleOps()交易内存池与状态管理方法作用debug_bundler_clearMempool清空 Bundler 内存池debug_bundler_clearState清空内存池 全部信誉数据debug_bundler_setMempool用给定 UserOp 数组填充本地内存池测试用debug_bundler_dumpMempool导出内存池中的 UserOperation 列表debug_bundler_dumpMempoolRaw导出带内部元数据提交时间、状态等的原始内存池条目信誉系统Reputation方法作用debug_bundler_setReputation设置指定地址的信誉opsSeen/opsIncluded/status配合entryPoint参数debug_bundler_dumpReputation返回所有被观察地址的信誉数据debug_bundler_clearReputation清空全部信誉数据Bundler 依据信誉分数自动封禁ban反复失败的工厂/支付主/账户达到防 DoS 效果。质押状态查询debug_bundler_getStakeStatus查询指定地址的staked、stake、unstakeTime及关联信息便于调试minStake/minUnstakeDelay策略。 可选Redirect RPC 透传模式启动时开启--redirectRpc参数后Skandha 会将34 个标准以太坊 RPC 方法透传给底层执行客户端rpcEndpoint配置包括eth_call、eth_estimateGas、eth_getBalanceeth_gasPrice、eth_maxPriorityFeePerGas、eth_blockNumbereth_getTransactionByHash、eth_getLogseth_sendRawTransaction等完整清单见 packages/api/src/constants.ts 中的RedirectedRPCMethods。这样钱包使用 UserOp.js 时无需切换 RPC 端点——一个地址搞定 UserOp 与普通交易。✅ 常见问题速查问题答案收到Method not supported错误方法名拼写或命名空间错误检查是否漏了eth_/skandha_前缀debug 方法调用被拒绝确保请求来自 localhost或携带正确的SKANDHA_ADMIN_KEY鉴权头批量请求怎么发HTTP POST body 直接传 JSON 数组即可逐条返回结果如何实时跟踪 UserOp 状态优先用 WebSocket 的skandha_subscribe轮询场景可用skandha_userOperationStatus 延伸阅读项目总览与安装README.mdAPI 服务入口packages/api/src/app.ts方法名常量定义packages/api/src/constants.ts订阅文档docs/skandha_subscribe.md状态查询文档docs/skandha_userOperationStatus.md各模块说明packages/api/README.md掌握这份eth_、skandha_与debug_方法清单你就能覆盖从提交 UserOp、查询状态、订阅事件到运维调试的全部场景快速上手 Skandha 账户抽象 Bundler。【免费下载链接】skandhaA modular typescript implementation of ERC4337 (Account Abstraction) bundler client.项目地址: https://gitcode.com/gh_mirrors/sk/skandha创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表