Что может быть причиной для транзакции, которая не проходит в Volta Testnetwork? - PullRequest
1 голос
/ 23 октября 2019

Я пишу приложение Nodejs с использованием Express Framework. Я пытаюсь отправить один эфир из одной учетной записи в другую, и хотя я получаю хэш транзакции, транзакция не проходит. Я уже читал, что цена на газ может быть слишком низкой, но опять же это не сработало, поскольку я установил его даже на 5.000.000. Когда я вызываю web3.eth.getTransactionReceipt('txHash'), он возвращает ноль, поэтому я предполагаю, что транзакция не удалась.

Вот мой код:

router.get('/', (req, res, next) => {
    // Build a transaction object
    web3.eth.getTransactionCount(ad2, (err, txCount) => {
        const txObject = {
            nonce: toHex(txCount),
            to: ad1,
            value: toHex(web3.utils.toWei('1', 'ether')),
            gasLimit: toHex(21000),
            gasPrice: toHex(web3.utils.toWei('12', 'gwei'))
        }

        // Sign the transaction
        const tx = new Tx(txObject);
        tx.sign(pk2);

        const serializedTx = tx.serialize();
        const raw = '0x' + serializedTx.toString('hex')

        // Broadchast the transaction to the network
        web3.eth.sendSignedTransaction(raw, (err, txHash) => {
            console.log('txHash:', txHash);

            web3.eth.getTransactionReceipt(txHash, (err, receipt) => {
                console.log('receipt: ', receipt);

                if (receipt == null) {
                    // Render the page
                    res.render('sendTransaction', {
                        receiptSuccess: 0,
                        blockHash: 'No Receipt Found'
                    });
                } else {
                    // Render the page
                    res.render('sendTransaction', {
                        receiptSuccess: 1,
                        blockHash: receipt.blockHash,
                        blockNumber: receipt.blockNumber,
                        transactionHash: receipt.transactionHash,
                        from: receipt.from,
                        to: receipt.to,
                        contractAddress: receipt.contractAddress,
                        gasUsed: receipt.gasUsed
                    });
                }
            });
        });
    });
});

Что мне нужно сделать, чтобы отправить транзакцию с адреса1 наадрес2 успешно? Чего не хватает в приведенном выше коде?

Спасибо!

...