Solidity
從 require() 獲取錯誤資訊
我知道最新的 Solidity 支持 require/revert (
require(stuff, "problem")
) 中的錯誤消息。是否有任何客戶可以收到此消息?如果我在 Parity、Truffle 或 Remix 中執行交易,我能看到它嗎?它會在 Etherscan 上可見嗎?
編輯:之前已經問過一個類似的問題(require() 中的自定義錯誤消息沒有出現?)。那是關於 web3 不顯示消息的。我知道 web3 還不支持它,我的問題是關於哪些其他客戶端(Parity、Remix 或者,也許只是普通的 RPC)支持它,所以我相信它不是重複的。
混音支持它。
在我正在處理的程式碼中,
require(stuff..,"player doesn't exist");
我在控制台中收到消息:Reason provided by the contract "player doesn't exist"
最新的 Truffle 支持它,而且我們可以使用 Parity 的重放事務功能獲取和解碼事務跟踪。