Docs

Docs

  • 文档
  • github

›使用说明

快速开始

  • 代码示例

使用说明

  • 获取SDK
  • 初始化
  • 交易类型
  • 请求响应
  • 合约接口
  • 工具接口

注意事项

  • 相关事项

合约接口

获取合约Service

方法原型

public static ContractService getContractService(ProviderManager providerManager)

参数说明

参数名
类型
参数描述
providerManagerProviderManagerProvider管理器

返回值:ContractService接口

使用示例

ProviderManager providerManager = ProviderManager.createManager(defaultHttpProvider);
ContractService contractService = ServiceManager.getContractService(providerManager);

部署合约

方法原型

Request<TxHashResponse> deploy(Transaction transaction, int... nodeIds)

参数说明

参数名
类型
参数描述
transactionTransaction部署交易
nodeIdsint[]限制请求节点id,空则为随机节点

返回值:绑定TxHashResponse的Request,调用发送接口后获取到TxHashResponse

TxHashResponse拥有结构如下:

  • txHash: 交易哈希值

使用示例

TxHashResponse txHashResponse = contractService.deploy(transaction).send();
ReceiptResponse receiptResponse = txHashResponse.polling();
System.out.println("合约地址: " + receiptResponse.getContractAddress());

说明:TxHashResponse可以获取交易的哈希值,通过polling()轮询获取交易回执Receipt

调用合约

方法原型

Request<TxHashResponse> invoke(Transaction transaction, int... nodeIds)

参数说明

参数名
类型
参数描述
transactionTransaction调用交易
nodeIdsint[]限制请求节点id,空则为随机节点

返回值:绑定TxHashResponse的Request,调用发送接口后获取到TxHashResponse

TxHashResponse拥有结构如下:

  • txHash: 交易哈希值

使用示例

TxHashResponse txHashResponse = contractService.invoke(transaction1).send();
ReceiptResponse receiptResponse = txHashResponse.polling();
System.out.println("调用返回(未解码): " + receiptResponse.getRet());
System.out.println("调用返回(解码):" + Decoder.decodeHVM(receiptResponse.getRet(), String.class));

说明:TxHashResponse可以获取交易的哈希值,通过polling()轮询获取交易回执Receipt

查询回执

方法原型

Request<ReceiptResponse> getReceipt(String txHash, int... nodeIds)

参数说明

参数名
类型
参数描述
txHashString交易哈希
nodeIdsint[]限制请求节点id,空则为随机节点

返回值:绑定ReceiptResponse的Request,调用发送接口后获取到ReceiptResponse

TxHashResponse拥有结构如下:

  • txHash: 交易哈希值
  • ret: 交易执行结果
  • log: 交易日志
  • VMType: 虚拟机类型
  • gasUsed: 消耗的gas

使用示例

TxHashResponse txHashResponse = contractService.invoke(transaction1).send();
ReceiptResponse receiptResponse1 = txHashResponse.polling(); // 获取回执方式1
ReceiptResponse receiptResponse2 = contractService.getReceipt(txHashResponse.getTxHash()); // 获取回执方式1
System.out.println("调用返回(未解码): " + receiptResponse2.getRet());
System.out.println("调用返回(解码):" + Decoder.decodeHVM(receiptResponse2.getRet(), String.class));

说明:获取回执可以通过TxHashResponse获取的txHash值调用接口获取,也可以TxHashResponse的polling()函数轮询获取交易回执Receipt

← 请求响应工具接口 →
  • 获取合约Service
  • 部署合约
  • 调用合约
  • 查询回执
QTechGitHub
Copyright © 2025 Hyperchain Co., Ltd.