#web3js #erc20
Вопрос:
Я пытаюсь использовать web3js для вызова переводов смарт-контрактов.
До этого я был авторизован, транзакция была успешно отправлена.
и я получаю TxHash,затем я использую это для запроса в etherscan, не удалось
TxHash: 0x7ab36f10de10b7543d17900bdb4546ec625de0853ade57e399563ba7cff9fc9b
мой код:
const transfer = () =gt; { // w3.eth.getBalance(req.body.fromAddress).then(ethBalance =gt; { // console.log('eth balance:' ethBalance) // }); tokenContract.methods.balanceOf(req.body.fromAddress).call().then((balance) =gt; { console.log('token balance:' balance "rn"); w3.eth.getTransactionCount(req.body.fromAddress, (nonceError, nonce) =gt; { if (nonceError) { return res.json({ code: 202, message: nonceError }) } w3.eth.getGasPrice((gasPriceError, gasPrice) =gt; { if (gasPriceError) { return res.json({ code: 203, message: gasPriceError }) } try { tokenContract.methods.allowance( req.body.toAddress, //address _owner req.body.fromAddress //address _spender ).call().then(allow =gt; { console.log( 'approve amount' allow) }) let amount = new BigNumber(req.body.amount).multipliedBy(1000000).toNumber(); let rawTx = { from: req.body.fromAddress, to: erc20ContractAddress, value: w3.utils.toHex(w3.utils.toWei('0', 'ether')), nonce: w3.utils.toHex(nonce ), gasLimit: w3.utils.toHex(50000), gasPrice: w3.utils.toHex(gasPrice.toString()), // data: tokenContract.methods.transfer(req.body.toAddress, w3.utils.toHex(w3.utils.toWei('0.00002', 'wei')) ).encodeABI() data: tokenContract.methods.transferFrom(req.body.fromAddress, req.body.toAddress, w3.utils.toHex(amount)).encodeABI() } let tx = new EthereumTx(rawTx); tx.sign(Buffer.from(privateKey, 'hex')); let serializedTx = tx.serialize(); let raw = '0x' serializedTx.toString('hex') w3.eth.sendSignedTransaction(raw, (err, txHash) =gt; { console.log(err); console.log(txHash); if(err) { return res.json({ code: 204, message: err }) } else { return res.json({ code: 200, data: txHash, message: 'success' }) } }) } catch(error) { console.log(error) return res.json({ code: 205, message: error }) } }) }) }) }
Эта проблема беспокоит меня уже несколько дней. Сначала я подумал, что этого недостаточно. Сравнив другие успешные транзакции, я обнаружил, что это не так. Я не знаю, в чем проблема