post https://api.shasta.trongrid.io/wallet/triggerconstantcontract
既可以调用合约只读函数(view
或 pure
修饰的函数),用于合约数据查询;也可以调用合约非只读函数,用于预判交易是否可以执行成功或者预估交易的能量消耗
注意
- triggerconstantcontract不会产生上链交易,也不会改变当前节点的状态。
- 对于预估能量:使用triggerconstantcontract调用合约的非只读方法,返回结果中的
energy_used
字段就是能量消耗量,因此,交易的fee_limit可以设置为energy_used x 能量单价
。 - parameter编解码参考示例:参数编码和解码
返回值
字段 | 类型 | 描述 |
---|---|---|
result | Return | 执行结果,详细参数介绍请参考 EstimateEnergy |
energy_used | int64 | 预估调用合约消耗的能量,包括基础能量消耗和额外能量消耗 |
energy_penalty | int64 | 预估合约调用额外的能量消耗 |
constant_result | string[] | 查询出的结果列表 |
transaction | Transaction | 交易信息,具体参数请参考 GetTransactionByID 的返回值 |
总结:
- 预估的合约调用能量消耗量:
energy_used
- 预估的合约调用的额外能量消耗量:
energy_penalty
- 预估的合约调用的基础能量消耗量:
energy_used
-energy_penalty