合約呼叫工具
貼上合約地址與 ABI 後,頁面會按 ABI 動態列出所有可讀與可寫方法。 讀取無需連線錢包;寫入會先模擬執行,引數異常在簽名前提示。 呼叫次數填 1 就是單次呼叫,填更多則按間隔重複執行、逐次顯示結果。 如果你要操作的是自己建立的代幣,回代幣管理會更省事——那裡已經按型別配好了介面。
合約與 ABI
先用 ABI 列出可呼叫的方法,再填引數與執行方式。單次與重複共用這一套輸入: 次數填 1 是「調一次」,填 N 就是重複執行 N 次。
合約呼叫工具:讀寫任意合約
貼上合約地址和 ABI,工具會按 ABI 生成全部方法:讀取方法直接把返回值印在頁面上,寫入方法可以先靜態呼叫(不花 gas)模擬一遍再真發,失敗時列印完整的 revert 原因,而不是一句「呼叫失敗」。
- 讀方法
- 不連錢包也能調,不用簽名
- 寫方法
- 先跑一遍靜態呼叫,revert 在簽名前就被攔下
- 下次再用
- 合約地址、ABI、引數都快取在你瀏覽器裡
- 失敗時
- 列印具體的 revert 原因,不是隻給一句「失敗」
怎么做
1. 貼上合約地址,或從已儲存的合約裡選
常用合約的地址和 ABI 會存在瀏覽器裡,下次點兩下就能用。
2. 貼上 ABI
從區塊瀏覽器的合約原始碼頁複製。表單按 ABI 生成,結構體、陣列引數都支援。
3. 呼叫讀取方法
讀取不需要錢包、不花 gas,多返回值也會分行列印,地址都能一鍵複製。
4. 寫入先靜態呼叫再發送
靜態呼叫按真實執行跑一遍但不改狀態、不花 gas,結果或 revert 原因先看清楚,再真發。
常见问题
- 沒有 ABI 能呼叫嗎?
- 不能。ABI 決定表單怎麼編碼引數、怎麼解碼結果。去區塊瀏覽器的已驗證原始碼頁複製一份即可。
- 寫入方法能不花 gas 先試嗎?
- 能。靜態呼叫就是幹這個的:不花 gas、不改狀態,直接告訴你結果或失敗原因。
- 重新整理之後儲存的合約還在嗎?
- 在。地址和 ABI 存在瀏覽器裡,下次從列表裡選,不用重新粘。
- 呼叫為什麼失敗?
- 控制台會打印合約返回的 revert 原因,多數情況下能直接看出是哪個引數或許可權不對。
