启动一个连接到节点的交互控制台,您可以参考文档开启geth交互控制台来建立一个交互控制台
创建一个以太坊账户,如果您已经在节点上创建了以太坊账户,可以使用已有账户完成后续操作
// create a account that use empty passwordvar account = personal.newAccount("");// using an existing account in node// var account = eth.accounts[0]// unlock account for 300 seconds with empty passwordpersonal.unlockAccount(account, "", 300);// set it as default accountweb3.eth.defaultAccount = account;
指定智能合约的地址和ABI,并发起调用。您可以参考部署智能合约中的步骤来部署智能合约,并获取智能合约的地址和ABI。
// your contract address that you want to callvar address = "0x0000000";// your contarct ABI that address corresponds tovar abi = [{"constant":true,"inputs":[],"name":"storedData","outputs":[{"name":"","type":"uint256"}],"payable":false,"type":"function"},{"constant":false,"inputs":[{"name":"x","type":"uint256"}],"name":"set","outputs":[],"payable":false,"type":"function"},{"constant":true,"inputs":[],"name":"get","outputs":[{"name":"retVal","type":"uint256"}],"payable":false,"type":"function"},{"inputs":[{"name":"initVal","type":"uint256"}],"payable":false,"type":"constructor"}];var contract = eth.contract(abi).at(address)// call get method of demo contractcontract.get()// call set method of demo contract, and create a new transactioncontract.set(999)
该文章对您有帮助吗?