如何从不同的节点访问合同的功能?

如何从不同的节点访问合同的功能?

问题描述:

我有两个合同说A和B,两个节点运行在不同的机器Machine1和Machine2具有相同的网络ID,我已经添加节点使用节点url。合同A由机器1部署在区块链中,合同B由机器2部署。现在我想从机器2和机器1访问合同A的功能,并从机器2和机器1访问合同B的功能。如何访问功能如何从不同的节点访问合同的功能?

要生成阿比转到https://etherchain.org/solc,把你的合同代码,并获得ABI

使用VAR合同= eth.contract(ABI)。在(contractaddress)

替换ABI,并与ABI和地址地址的合同。

这将允许您访问合同。

以太坊区块链是一个分布式应用程序平台。这意味着合同代码不会部署到特定节点;而是将其部署到每个节点都有副本的分布式账本(假设每个节点已与其余网络达成共识)。同样,当您调用合约函数时,至少在您的网络中正在积极挖掘(验证事务)的那些节点上执行函数调用。

通过向网络广播交易创建合同。部署合同的功能也通过广播交易来调用。

准备创建合同的交易将返回合同的地址。该地址引用区块链上合同的唯一位置;把它记录下来。当您将该交易发送到区块链时,请等待当前区块被挖掘。一旦发生这种情况,所有节点都应在几毫秒内拥有代码副本,然后处理那些调用该合同中函数的事务。

创建合同后,请准备另一个调用函数的交易,并将之前记录的合同地址称为交易的接收方。然后,将此事务广播到网络。首先哪个节点接收事务并不重要。最终,在交易开始后不久,网络中的所有节点都将具有更新的区块链状态,以反映由函数调用导致的任何更改。