检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
示例Demo Java语言示例Demo基于Java SDK开发,主要用于帮助开发人员理解并开发Java客户端应用程序,使用步骤如下: 单击链接获取Java客户端示例[链接]。 完成客户端初始化参数配置(App.java),进行使用(配置可参考SDK客户端配置)。 示例Demo项目结构如下:
认证鉴权 调用接口有如下两种认证方式,您可以选择其中一种进行认证鉴权。 Token认证:通过Token认证通用请求。 AK/SK认证:通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。 Token认证 Token的有效期为24小时,需
利用合约发送交易 合约调用信息构建。 接口方法 ContractRawMessage.class public RawMessage buildInvokeRawMsg(String chainId, String name, String function, String[] args)
查询区块详情 消息构建。 接口方法 QueryRawMessage.class public RawMessage buildBlockRawMessage(String chainId, long blockNum) throws CryptoException 参数说明 参数
查询区块详情 消息构建。 接口方法 func (msg *QueryRawMessage) BuildBlockRawMessage(chainID string, blockNum uint64) (*common.RawMessage, error) 参数说明 参数 类型 说明
示例Demo 应用程序开发需要使用go mod,因此请确保GO111MODULE为on、镜像源配置。请确保可正常访问华为云镜像网站,环境设置命令如下 go env -w GO111MODULE=on go env -w GOPROXY=https://repo.huaweicloud
Java SDK Java SDK升级过程中只需修改pom.xml中SDK对应的版本号即可,详细见对应版本的使用配置。 java SDK需要在项目pom文件中配置华为镜像仓。 <repositories> <repository> <id>maven-proxy</id>
获取账号ID 在调用接口的时候,部分URL中需要填入账号ID(domain-id),所以需要先在管理控制台上获取到账号ID。账号ID获取步骤如下: 登录管理控制台。 单击用户名,在下拉列表中单击“我的凭证”。 在“API凭证”页面中查看账号ID。 图1 获取账号ID 父主题: 附录
合约编译 下载Node.js软件并安装,安装成功后,执行如下命令查看对应版本(软件对应版本无强制要求)。 node -v npm -v 设置新目录assembly,在该目录下执行 npm init 命令,其中package name输入为assembly(目录名、package
利用交易ID查询交易详情 消息构建。 接口方法 QueryRawMessage.class public RawMessage buildTxRawMessage(String chainId, byte[] txHash) throws CryptoException 参数说明
SDK客户端调用 SDK客户端配置后,即可调用SDK进行区块链相关的业务逻辑开发,调用示例可参考应用程序的示例Demo。 表1 SDK接口调用 类型 备注 合约接口 提供通过合约进行交易的发送与查询接口,详情可参考利用合约发送交易、利用合约查询数据 查询接口 提供查询块高、区块详
约。 Solidity合约的默认名称为"NATIVE_CUSTOM_EVM"。 ConsensusNode 实例下共识组织对应的节点,华为云区块链引擎共识组织下共3个共识节点,任选其一即可。 EndorserNodes 根据合约安装时选择的背书策略进行配置。 若为任意组织背书,则配置任意组织下的某一节点即可;
合约相关的API 合约SDK(index.ts)提供如下API接口,可以在合约文件中进行调用。这些API按照功能可以划分为: 表1 辅助功能 接口 说明 FuncName(txid :string ) :string 获取智能合约请求中指定的智能合约函数名称。 Parameters(txid:
查询文件操作记录 接口方法 func (bc *BsClient) GetFileOperation(fileName, startTime, endTime string) ([]*bstore.StorageEvent, error) 参数说明 参数 类型 说明 fileName
Demo工程目录 合约开发和调测可参考合约示例Demo,单击链接获取AssemblyScript语言合约工程Demo。 build目录下optimized.wasm为合约编译后对应的wasm字节码文件(最终合约类型文件为optimized.wasm压缩成的*.zip包,合约示例Demo)。
查询文件历史版本 接口方法 func (bc *BsClient) GetFileHistory(fileName string) ([]*bstore.FileHistory, error) 参数说明 参数 类型 说明 fileName string 查询的链上文件名。 返回值
约。 Solidity合约的默认名称为"NATIVE_CUSTOM_EVM"。 ConsensusNode 实例下共识组织对应的节点,华为云区块链引擎共识组织下共3个共识节点,任选其一即可。 EndorserNodes 根据合约安装时选择的背书策略进行配置。 若为任意组织背书,则配置任意组织下的某一节点即可;
SDK客户端调用 SDK客户端配置后,即可调用SDK进行区块链相关的业务逻辑开发。 表1 SDK接口调用 类型 备注 合约接口 提供通过合约进行交易的发送与查询接口,详情可参考利用合约发送交易、利用合约查询数据。 查询接口 提供查询块高、区块详情以及交易查询等常见接口,详情可参考其他查询。
查询交易执行结果 消息构建。 接口方法 QueryRawMessage.class public RawMessage buildTxRawMessage(String chainId, byte[] txHash) throws CryptoException 参数说明 参数 类型
查询交易执行结果 消息构建。 接口方法 func (msg *QueryRawMessage) BuildTxRawMessage(chainID string, txHash []byte) (*common.RawMessage, error) 参数说明 参数 类型 说明 chainID