Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Blockchain 如何在块菌(甘纳切)中更改帐户?_Blockchain_Solidity_Truffle_Web3js_Ganache - Fatal编程技术网

Blockchain 如何在块菌(甘纳切)中更改帐户?

Blockchain 如何在块菌(甘纳切)中更改帐户?,blockchain,solidity,truffle,web3js,ganache,Blockchain,Solidity,Truffle,Web3js,Ganache,我使用ganache cli构建本地区块链,使用truffle部署contract。要与部署的契约交互,我使用truffle控制台。例如,我将代币从我的当前帐户(即web3.eth.personal.getAccounts()[0])转移到web3.eth.personal.getAccounts()[1]之后,我想将我的当前帐户更改为web3.eth.personal.getAccounts()[1]地址 如何操作?您可以将 或者只是作为一个地址 web3.eth.defaultAccount

我使用ganache cli构建本地区块链,使用truffle部署contract。要与部署的契约交互,我使用truffle控制台。例如,我将代币从我的当前帐户(即
web3.eth.personal.getAccounts()[0]
)转移到
web3.eth.personal.getAccounts()[1]
之后,我想将我的当前帐户更改为
web3.eth.personal.getAccounts()[1]
地址

如何操作?

您可以将

或者只是作为一个地址

web3.eth.defaultAccount = '0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe';

请注意,默认情况下,Ganache只有10个预定义帐户,它知道这些帐户的私钥。因此,您需要传递一个Ganache知道私钥的地址。如果您传递一个未知的帐户地址,web3(和Ganache)将无法使用此(未知)地址提交交易。

您能否给出代码示例,说明如何进行转账,以及“当前帐户”是什么意思?(如果您不指定发件人,web3会使用一个“默认帐户”,但如果没有代码示例,我不确定这是否是您的意思)。@PetrHejda yes current=default and transfer只是erc20传输方法的实现。例如,我的默认地址是“0x123”,我将令牌转移到“0x456”,然后我想将此令牌从“0x456”转移到“0x789”,但我不能,因为我的当前地址是“0x123”而不是“0x456”。如果您使用过混音,您可能知道在部署合同时可以更改帐户。所以我想我也可以通过控制台在块菌上做同样的事情,但我不知道怎么做。
web3.eth.defaultAccount = '0x11f4d0A3c12e86B4b5F39B213F7E19D048276DAe';