Web3js
給定一個合約地址,我能否確定合約何時部署?
理想情況下,該解決方案將使用 web3,但其他解決方案是可以接受的。
動機:
事件查找可以通過
fromBlock
欄位。如果我知道創建合約的區塊,我可以更準確地進行事件查找(而不是搜尋整個鏈)
共識區塊鏈不包含任何易於查詢的資訊,無法僅根據其地址來確定合約的創建時間。如果你有創建合約的交易的雜湊值,檢索它也會給你返回塊號。
如果您只是偶爾需要弄清楚某個/一些合約的創建區塊,您還可以諮詢區塊瀏覽器進行第一筆交易。
然而,儘管在整個鏈中查找屬於某個合約的事件顯然比僅從一個已知的起始塊中查找要慢,但事件查詢使用 mip-mapped 布隆過濾器,因此在目前鏈大小下它們應該相對較快。規範的解決方案是最初從塊 0 創建一個過濾器,然後儲存塊編號,直到您已經處理了這些塊,並且下次僅從那裡繼續。