1.系统合约调用
参数说明
contractName:合约名称
method:合约方法
txId:交易ID格式要求:长度为64字节,字符在a-z0-9可为空,若为空字符串,将自动生成txId
kvs:合约参数
timeout:超时时间,单位:s,若传入-1,将使用默认超时时间:10s
withSyncResult:是否同步获取交易执行结果当为true时,若成功调用,common.TxResponse.ContractResult.Result为common.TransactionInfo当为false时,若成功调用,common.TxResponse.ContractResult为空,可以通过common.TxResponse.TxId查询交易结果
InvokeSystemContract(contractName,method,txId string,kvs[]common.KeyValuePair,timeout int64,withSyncResult bool)(common.TxResponse,error)
2.系统合约查询接口调用
参数说明
contractName:合约名称
method:合约方法
kvs:合约参数
timeout:超时时间,单位:s,若传入-1,将使用默认超时时间:10s
QuerySystemContract(contractName,method string,kvs[]common.KeyValuePair,timeout int64)(common.TxResponse,error)
3..根据交易Id获取Merkle路径
参数说明
txId:交易ID:
GetMerklePathByTxId(txId string)([]byte,error)
4.开放系统合约
参数说明
grantContractList:需要开放的系统合约字符串数组
CreateNativeContractAccessGrantPayload(grantContractList[]string)(*common.Payload,error)
5.弃用系统合约
参数说明
revokeContractList:需要弃用的系统合约字符串数组
CreateNativeContractAccessRevokePayload(revokeContractList[]string)(*common.Payload,error)
6.查询指定合约的信息,包括系统合约和用户合约
参数说明
contractName:指定查询的合约名字,包括系统合约和用户合约
GetContractInfo(contractName string)(*common.Contract,error)
7.查询所有的合约名单,包括系统合约和用户合约
返回值说明
[]*common.Contract:链上所有的合约列表,包括系统合约和用户合约
GetContractList()([]*common.Contract,error)
8.查询已禁用的系统合约名单
返回值说明
[]string:链上已禁用的系统合约名字列表
GetDisabledNativeContractList()([]string,error)
9.链配置接口
10.查询最新链配置
GetChainConfig()(*config.ChainConfig,error)
11.根据指定区块高度查询最近链配置
参数说明
blockHeight:指定区块高度如果当前区块就是配置块,直接返回当前区块的链配置
GetChainConfigByBlockHeight(blockHeight uint64)(*config.ChainConfig,error)
12.查询最新链配置序号Sequence
用于链配置更新
GetChainConfigSequence()(uint64,error)
13.发送链配置更新请求
参数说明
payload:待签名payload
endorsers:背书签名信息列表
timeout:超时时间,单位:s,若传入-1,将使用默认超时时间:10s
withSyncResult:是否同步获取交易执行结果当为true时,若成功调用,common.TxResponse.ContractResult.Result为common.TransactionInfo当为false时,若成功调用,common.TxResponse.ContractResult为空,可以通过common.TxResponse.TxId查询交易结果
SendChainConfigUpdateRequest(payloadcommon.Payload,endorsers[]common.EndorsementEntry,timeout int64,withSyncResult bool)(*common.TxResponse,error)