我使用web3.py与契约交互。我想知道,在用selfdestruct或suicide(address)调用了一个函数之后,如何才能发现合同实际上已经失效了?
发布于 2020-05-03 18:21:39
您可以调用eth.getCode查看地址上是否有代码。如果没有代码,就没有合同。如果有代码,则有一个与地址相关联的契约。
使用ether.js,您可以看到它在下面是如何工作的。第一次呼叫是在合同部署之后,第二次呼叫是在selfdestruct编辑之后。
> kovanEthersProvider.getCode('0x761f887ea907DB3FBc13f55867Db2c2c9BDB34F9').then(console.log)
0x6080604052348015600f57600080fd5b506004361060285760003560e01c8063b9554c5914602d575b600080fd5b60336035565b005b600073ffffffffffffffffffffffffffffffffffffffff16fffea265627a7a723158203c431b72fff6bd29b3dd6d5b1c73f87aa200fb5a5029cbc24f45dac0e030d52664736f6c63430005110032
> kovanEthersProvider.getCode('0x761f887ea907DB3FBc13f55867Db2c2c9BDB34F9').then(console.log)
0x使用web3.py遵循相同的模式。
https://ethereum.stackexchange.com/questions/83017
复制相似问题