Мне нужно отправить несколько подписанных транзакций и с определенной учетной записи с одноразовым номером через web3.eth.getTransactionCount
. Поскольку звонок может идти параллельно, я либо получаю
замещающая сделка по заниженной цене
или
Транзакция не была добыта в пределах 50 блоков, убедитесь, что ваша транзакция была отправлена правильно.
Как лучше всего рассчитать одноразовый номер и сделать каждую транзакцию уникальной?
я использую веб3
У меня была аналогичная проблема, и я использовал глобальную переменную, чтобы запомнить последний использованный одноразовый номер. Если одноразовый номер, который вы получаете от web3.eth.getTransactionCount, меньше этого, вы можете соответствующим образом настроить одноразовый номер. В коде это выглядит как-то так:
var curnonce = web3.eth.getTransactionCount(account);
while (curnonce <= lastnonce) curnonce++;
lastnonce = curnonce;
Работает отлично и очень надежно в моем сценарии.
Приянк Гупта
gisdev_p
Приянк Гупта
gisdev_p
Приянк Гупта
gisdev_p