我是以太坊的新手。我正在尝试使用 Azure 的集群开发合同(我有试用帐户)。我使用 geth 从 Azure 中的机器连接到我的网络:
gethadmin@XXXXXX-tx0:~$ geth attach http://ether2ore.eastus.cloudapp.azure.com:8545
然后我初始化变量
>var test_var = 555
undefined
>test_var
555
没关系。
但是当我尝试从我的笔记本电脑连接到同一点时:
C:\Users\boris>geth attach http://ether2ore.eastus.cloudapp.azure.com:8545
我试图检查这个变量:
> test_var
ReferenceError: 'test_var' is not defined
at <anonymous>:1:1
我看到它没有定义。
在两个控制台上,我看到相同的帐户:
从 - C:\Users\boris>
eth.accounts ["0xab14c61930343149c2f54044054cd46b90c0dee6", "0x7cc276b28bfdbb57151ed3b5552aafb2f2592964", "0xc9b8b9d57219b2c0935d8c28d4d2247fe70232f3", "0x2aed463fd54aa41fed898a9629bee6f0935b74fb"]
来自 - gethadmin@XXXXXX-tx0
eth.accounts ["0xab14c61930343149c2f54044054cd46b90c0dee6", "0x7cc276b28bfdbb57151ed3b5552aafb2f2592964", "0xc9b8b9d57219b2c0935d8c28d4d2247fe70232f3", "0x2aed463fd54aa41fed898a9629bee6f0935b74fb"]
两个控制台上的命令admin.peers给了我相同的结果所以,它是相同的网络。
也许我不明白它应该如何工作,但我怀疑,如果我在同一个网络中定义变量,它必须从所有控制台都可见。是不是?合同的情况相同。我在第一个控制台中编译了合约并且可以使用它进行操作,但是从另一个控制台无法访问它。
拜托,你能解释一下为什么会发生这种情况,或者给我适当的链接来得到这个问题的答案。非常感谢