Go-Ethereum
可以在不知道合約地址的情況下監聽合約事件嗎?
我有一個智能合約,其中包含一個帳戶地址被儲存/索引的事件,並且我想在每次帳戶地址被事件觸發時獲取/建議有關此事件的資訊。
例如,我的 Solidity 事件:個人帳戶地址
myEvent( address indexed _sellerAddress)
在哪裡_sellerAddress
每次
_sellerAddress
提到我的事件時,我都想知道/被告知,但現階段我不知道智能合約地址。如果我不清楚,請告訴我。
謝謝
好吧,我自己找到了路。
eth.filter
只需在 web3.py 中設置一個類似的內容,例如:event_signature_hash = w3.sha3(text='myEvent(address)').hex() #Event name without input arguments my_event = w3.eth.filter({ "fromBlock":0, "toBlock":"latest", "topics":[event_signature_hash, my_seller_address_hexa], } ) my_event.get_all_entires()
我得到了
_sellerAddress
作為事件參數儲存/提及的所有事件日誌。