当我将智能合约部署到我的私有链时,我会收到此错误。
Error: Node error: {"code":-32000,"message":"unknown account"}
这是我的web3.js代码。
const bytecode = "0x608060405234801561001057600080fd5b506040516020806101018339810180604052602081101561003057600080fd5b8101908080519060200190929190505050806000819055505060aa806100576000396000f3fe6080604052348015600f57600080fd5b506004361060325760003560e01c8063c412eaba146037578063ca6158cb146053575b600080fd5b603d606f565b6040518082815260200191505060405180910390f35b60596078565b6040518082815260200191505060405180910390f35b60008054905090565b6000548156fea165627a7a7230582042b7071573f040950b28decc097069f3f208055692800cf2260019f40904af610029"
var itemContract = new this.props.web3.eth.Contract([{"constant":true,"inputs":[],"name":"getItem","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"itemId","outputs":[{"name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"inputs":[{"name":"id","type":"uint256"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"}]);
itemContract.deploy({
data: bytecode,
arguments:[1]
})
.send({
from: decryptEtherAccount.address,
gas: 0,
gasPrice: '0',
}).on('error', (error) => {
console.log("Error: ", error);
}).on('transactionHash', (transactionHash) => {
console.log("TxHash: ", transactionHash);
}).on('receipt', (receipt) => {
console.log("Address: ", receipt.contractAddress)
}).then((newContractInstance) => {
console.log(newContractInstance);
}).catch(function(error) {
console.log(error);
});
请给我任何建议,为什么我会收到此错误?
答案 0 :(得分:1)
在使用地址发送交易之前,请确保已将其添加到web3钱包中。
指南:https://web3js.readthedocs.io/en/v1.2.0/web3-eth-accounts.html#wallet-add