Skip to content

RPC支持

Moonbeam v Ethereum - RPC Support Banner

概览

虽然Moonbeam致力于兼容以太坊Web3 API和EVM,但开发者仍需了解Moonbeam在以太坊API JSON-RPC支持方面与以太坊之间的重要差异。

Moonbeam团队与Parity密切合作开发Frontier。Frontier是基于Substrate的以太坊兼容层,它允许开发人员运行未经修改的以太坊DApp。

尽管如此,并非所有的以太坊JSON RPC方法都被支持,一些被支持的方法返回默认值(尤其是与以太坊PoW共识机制相关的那些)。本教程将概述关于以太坊RPC支持的一些主要差异,以及首次使用Moonbeam时需要了解的事项。

基本以太坊JSON RPC方法

截止本文撰写时,Moonbeam支持的以太坊API的基本JSON RPC方法:

过滤器相关以太坊JSON RPC方法

截止本文撰写时,Moonbeam支持的以太坊API的过滤器相关JSON RPC方法:

  • eth_newFilter —— 根据所提供的输入创建过滤器对象。返回一个过滤器ID
  • eth_newBlockFilter —— 在节点中创建过滤器以在新的区块到达时进行通知。返回一个过滤器ID
  • eth_newPendingTransactionFilter —— 在节点中创建过滤器以在新的待处理事务到达时进行通知。返回一个过滤器ID
  • eth_getFilterChanges —— 过滤器的轮询方法(参考以上方法)。返回自上次轮询以来发生的日志数组
  • eth_getFilterLogs —— 返回匹配指定ID过滤器的所有日志数组
  • eth_uninstallFilter —— 卸载指定ID的过滤器。应在不需要轮询时使用。一段时间后未使用eth_getFilterChanges请求过滤器超时

事件订阅以太坊JSON RPC方法

截止本文撰写时,Moonbeam支持的以太坊API的事件订阅JSON RPC方法

已支持订阅

截止本文撰写时,已支持的订阅

  • newHeads —— 每次将新的标题附加至链都会触发通知
  • logs —— 返回包含在新导入区块中并匹配指定过滤条件的日志
  • newPendingTransactions —— 返回所有增加至待处理状态的交易哈希
  • syncing —— 表示节点开始或停止与网络同步

如果您想获得跟多关于这些订阅的详细教程,请查看事件订阅教程。