Contract-Invocation
從事件中獲取交易雜湊(ethersjs)
我的目標是盡可能快地檢測到合約呼叫。為此,我正在處理我有權訪問的所有待處理事務(通過
provider.on("pending", async (tx) => {})
)。為了檢測我正在尋找的合約呼叫,我掃描
data
交易欄位以獲取方法簽名。但是,我已經看到可以通過呼叫另一個合約來呼叫合約,而該合約又可以呼叫感興趣的方法。在這種情況下,data
將只包含緩衝合約的方法簽名,我認為我無法從這種方法中獲得更多。另一種方法是通過 監聽合約事件
targetContract.on("targetMethod", (**parameters) => {})
,但是這種方式我只能訪問方法參數,我想訪問事務雜湊(如果它仍然未決,那就更好了)。我知道訪問掛起的事務是不可能的,因為要記錄事件,它必須已經被處理,對吧?是否可以通過這種方式訪問交易雜湊?有沒有什麼方法可以實現我檢測合約呼叫的目標,即使是通過代理合約完成並放置在同一個區塊中處理的交易?
謝謝!
回調中的最後一個參數是事件日誌對象。
targetContract.on("targetMethod", (...parameters) => { const event = parameters[parameters.length - 1]; console.log(event.transactionHash); })