合约常见问题
合约交互 Vm reverted 错误
在跟合约交互时可能会碰到如下错误:
transaction is reverted. Innermost error is at CFXTEST:TYPE.CONTRACT:ACEJ04GJ99EM49UG52E662HU5PFUAEGBDJ3YJJEMYN: Vm reverted. ., data = "CFXTEST:TYPE.CONTRACT:ACEJ04GJ99EM49UG52E662HU5PFUAEGBDJ3YJJEMYN: Vm reverted.
通常可能有两种可能
- solidity 的执行逻辑或检查逻辑失败,包括:交易 calldata ABI 编码错误,调用了不存在的函数,合约内部调用了不存在的合约,向不 payable 的函数转账等。
- solidity 代码中 require 函数检查失败,没有错误消息,如:require(msg.sender == owner);
No Comments