Я использую функцию web3.eth.sendSignedTransaction
, но она не работает.
Это код проблемы
var nonce = web3.eth.getTransactionCount("<from address>");
const txParams ={
nonce:web3.utils.toHex(nonce),
to : "<to address>",
value : web3.utils.numberToHex(web3.utils.toWei('0.01','ether')),
gasPrice :web3.utils.numberToHex(web3.utils.toWei('1','Gwei')),
gasLimit:web3.utils.numberToHex('300000'),
chainId :3 //Ropsten
}
const tx = new Tx(txParams);
const privateKey = Buffer.from("<primary key>",'hex');
tx.sign(privateKey);
const serializedTx = '0x' + tx.serialize().toString('hex');
console.log(serializedTx);
web3.eth.sendSignedTransaction(serializedTx, function(err,txId){if(err){ console.log(' : ',txId)}});
Я проверил журнал "serializedTx".
0xf86d827b7d843b9aca00830493e0944f16477b610cad87e1f506e42208bc36bce6aa4887f8b0a10e470000802aa016a1bc13133cbbfd0cdb5aa0da5e049e0eba3972b313ba69887970acecf2e11ba06b2fd1b9dad15959e271a1af8020fd9e4b1f089d8eb66f99c48988032c300f78
Я думаю, что это слишком долго ...
1014 * И эфир также не могут быть переданы. 1016 * И я пытался от 1018 *
до
"web3.utils.toWei(0.01, 'ether')"
Но это ошибка.
Код ошибки: «Пожалуйста, передайте числа в виде строк или объектов BigNumber, чтобы избежать ошибок точности.»
Что не так и как я могу это сделать?
Пожалуйста, помогите мне.
Спасибо.