Go-Ethereum

如何在 Go 中解碼 Log.Data

  • February 16, 2020

我正在使用client.SubscribeFilterLogs. 事件參數以types.Log.Data. 我怎樣才能解碼它go

2017 年 10 月的go-ethereum abi包獲得了解包事件輸出的更新。最初它只能解壓方法輸出。

所有功能都通過對abi.ABI像傳遞。要使用它,您需要擁有 Event ABI(JSON 字元串)。然後使用func (abi *ABI) UnmarshalJSON構造ABI對象。從那裡您可以使用從您的日誌對像中使用的Unpack方法。Data

請記住,索引屬性進入 logTopic而不是Data.

有關更多使用詳細資訊,您可以按照以下範例進行操作:

注意:在目前實現 (2017-11-29) 中,存在索引屬性的錯誤。我已經為此送出了PR,仍在等待最終批准。

引用自:https://ethereum.stackexchange.com/questions/28637