Транзакция с использованием Metamask работает. Сбой с web3.py

У меня две транзакции: первая из MetaMask (все в порядке)

https://etherscan.io/tx/0x1ab684f4875f8cc28043d9f3c3536a5e4f8a565cadda7a29bc6a96db5f1d0f8f

второй, используя web3.py (он кажется идентичным, но не работает)

https://etherscan.io/tx/0xc019007895cb7340f65c3bd80df5561c1b1a98d8eac6dc2babf776ab000de067

Вот моя часть кода: (Надеюсь, ясно, что происходит - она ​​копируется из класса)

# same as in the working one
abidata = '0x338b5dea000000000000000000000000e41d2489571d322189246dafa5ebde1f4699f49800000000000000000000000000000000000000000000000000002d79883d2000'
trans = {
                        'to': self.address,
                        'from': self.ethapi.address,
                        'data': abidata,
                        'value': 0,
                        'chainId': 1}
# transaction gas data [pseudocode]
trans_new = trans.copy()
nonce = w3.eth.getTransactionCount(self.address)
gas_price = self.get_gas_price()
gas_price_wei = self.w3.toWei(gas_price,"Gwei")
trans_new["gas"] = 250000
trans_new["nonce"] = nonce
trans_new["gasPrice"] = gas_price_wei
signed_transaction = account.signTransaction(trans)
w3.eth.sendRawTransaction(signed_transaction.rawTransaction)

Спасибо за любой намек!

3 голоса | спросил MichaelRazum 13 FebruaryEurope/MoscowbTue, 13 Feb 2018 22:54:18 +0300000000pmTue, 13 Feb 2018 22:54:18 +030018 2018, 22:54:18

1 ответ


2

Как было предложено Исмаэлем в комментариях выше, моя ошибка заключалась в том, что MetaMask выполнил две транзакции. Итак, первое было одобрением, которое отсутствовало.

ответил MichaelRazum 14 FebruaryEurope/MoscowbWed, 14 Feb 2018 15:33:02 +0300000000pmWed, 14 Feb 2018 15:33:02 +030018 2018, 15:33:02

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132