代码之家  ›  专栏  ›  技术社区  ›  matan tsuberi

Web3。js:使用'call(..)`是否执行网络活动?

  •  -1
  • matan tsuberi  · 技术社区  · 6 年前

    使用web3时 [contract].[method].call(..) ,web3是否执行网络活动以获取合同的最新状态?或者它是否总是使用最新的块,因此不需要获取数据? 是否取决于提供商?如果是,MetaMask的策略是什么?

    1 回复  |  直到 6 年前
        1
  •  1
  •   user94559    6 年前

    该代码调用 eth_call 您正在用作提供程序的节点上的JSON-RPC方法。如果节点位于同一台计算机上,则没有 外部的 网络活动。(该调用可能是通过websocket或HTTP进行的,因此它有点像网络调用,但没有任何东西离开计算机。)

    如果您使用的是外部节点,例如Infura(默认提供程序元掩码连接到),则存在外部网络活动来向该节点发送请求并接收响应。