检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
合约结构 AssemblyScript语言合约主要包括index.ts和contract.ts两个文件,其中index.ts为开发智能合约文件(contract.ts)依赖的合约SDK,合约涉及的业务相关开发仅在contract.ts文件,智能合约文件contract.ts需要根据实际业务进行开发。
利用合约查询数据 合约调用信息构建。 接口方法 ContractRawMessage.class public RawMessage buildInvokeRawMsg(String chainId, String name, String function, String[] args)
利用合约查询数据 查询请求消息构建 接口函数 func (msg *ContractRawMessage) BuildInvokeMessage(chainID string, name string, function string, args []string) (*common
通用方法 相关类 com.huawei.wienerchain.SdkClient SdkClient对象包含获取服务节点、获取各种类型的消息构造器及交易ID等方法,基于SDK开发时,必须先构造该对象。 初始化SDK客户端 基于标准配置文件模板初始化SDK。 调用方法 public
error 参数说明 参数 类型 说明 filePath string 文件下载到本地的路径。 fileName string 待下载文件在链上的名称。不允许包含 "/" versionId int 待下载文件的版本号。版本号要求大于等于1,可以通过查询文件历史版本获取文件的版本号信息。
组织解密 接口方法 func (client *GatewayClient) DecryptDataWithE2EE(consensusOrgID, decOrgID string, txID string) (data string, err error) 参数说明 参数 类型
查询块高 消息构建。 接口方法 QueryRawMessage.class public RawMessage buildLatestChainStateRawMessage(String chainId) throws CryptoException 参数说明 参数 类型 说明
Go SDK Go SDK升级过程如下: 删除旧版本huaweichain SDK。 下载新版本的SDK文件解压至原有的SDK文件路径。 表1 Go SDK版本与变更 版本号 下载 说明 0.4.9 链接 适配实例版本1.0.2.1。 0.2.15 链接 适配实例版本1.0.2.0。
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 父主题: 附录
contract.go 通过合约对业务数据交互。对数据有修改的操作如插入和删除,需要调用其中的send方法。对数据的查询操作如查询某个键的历史,需要调用其中的query方法。 block.go 用于从区块上获取数据。 tx.go 用于从交易上获取数据。 config.go 客户端的初始化配置。
如果您需要对您所拥有的华为云区块链引擎服务进行精细的权限管理,您可以使用统一身份认证服务(Identity and Access Management,简称IAM),如果华为云账号已经能满足您的要求,不需要创建独立的IAM用户,您可以跳过本章节,不影响您使用华为云区块链引擎服务的其它功能。
查询区块块高 消息构建。 接口方法 func (msg *QueryRawMessage) BuildLatestChainStateRawMessage(chainID string) (*common.RawMessage, error) 参数说明 参数 类型 说明 chainID
装合约。 Solidity合约的默认名称为"NATIVE_CUSTOM_EVM"。 ConsensusNode 实例下共识组织对应的节点,华为云区块链引擎共识组织下共3个共识节点,任选其一即可。 EndorserNodes 根据合约安装时选择的背书策略进行配置。 若为任意组织背书,则配置任意组织下的某一节点即可;
自定义策略授权项 华为云区块链引擎支持自定义策略授权项如下所示 表1 华为云区块链引擎常用操作与系统权限关系 接口 对应的API接口 授权项 依赖授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 查询服务信息 GET /v2/{proje
利用合约发送交易 背书消息构建 接口函数 func (msg *ContractRawMessage) BuildInvokeMessage(chainID string, name string, function string, args []string) (*common
通过合约对业务数据交互。对数据有修改的操作如插入和删除,需要调用其中的send方法。对数据的查询操作如查询某个键的历史,需要调用其中的query方法。 BlockUtil.java BlockUtil用于从区块上获取数据。 TxUtil.java TxUtil用于从交易上获取数据。 pom.xml
利用合约发送交易 合约调用信息构建。 接口方法 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) 参数说明 参数 类型 说明