以太坊:Solidity中require校驗不過時的異常訊息是怎麼解析的
阿新 • • 發佈:2018-12-15
轉載請註明出處:https://www.cnblogs.com/zhizaixingzou/p/10122209.html
https://solidity-cn.readthedocs.io/zh/develop/control-structures.html?highlight=revert%20
經過實際程式來看下:
pragma solidity ^0.4.12;
contract DataStore {
constructor () public {
require(80==11, "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa");
}
}
部署的時候就會返回為revert,此時的校驗不過說明字串在程式結果的hReturn中儲存:
08c379a0
0000000000000000000000000000000000000000000000000000000000000020
000000000000000000000000000000000000000000000000000000000000002e
6161616161616161616161616161616161616161616161616161616161616161
6161616161616161616161616161000000000000000000000000000000000000
解析這個結果時需要先去掉函式簽名的4個位元組。
結果輸出如下: