检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
安装及实例化链代码 安装链代码 实例化链代码 父主题: 准备工作
码。 在“tcshelper”链代码列表的“操作”列,单击“实例化”。 选择实例化通道、链代码版本、背书策略、背书组织列表,具体设置请参考表1。 表1 辅助链代码配置 参数 说明 实例化通道 默认,此处是channela 链代码版本 1.0 链代码参数 不填 背书策略 选择“下列任意组织背书”
在链代码管理页面,单击页面左上角的“安装链代码”。 在安装界面输入“链代码名称”、“链代码版本”,配置参数如表1所示。 表1 安装链代码参数表 参数 说明 链代码名称 tcshelper 链代码版本 1.0 选择全部Peer节点 勾选 链代码语言 Golang 链代码文件 添
下载源码包 下载Fabric源码包作为三方库。可选择使用1.x或2.x风格开发跨链智能合约: 版本 链接 1.x https://github.com/hyperledger/fabric/tree/release-1.4 2.x https://github.com/hyper
跨链智能合约方法示例 介绍跨链智能合约方法示例。 交易发起方预提交(preCommitSend) 交易接收方预提交(preCommitRecv) 交易发起方提交(commitSend) 交易接收方提交(commitRecv) 交易发起方回滚(rollbackSend) 交易接收方回滚(rollbackRecv)
跨链链代码开发(Hyperledger Fabric) 开发前准备 开发跨链智能合约
return shim.Error(err.Error()) } return shim.Success(nil) } 父主题: 跨链智能合约方法示例
return shim.Error(err.Error()) } return shim.Success(nil) } 父主题: 跨链智能合约方法示例
return shim.Error(err.Error()) } return shim.Success(nil) } 父主题: 跨链智能合约方法示例
开发环境准备 请根据自身业务选择Go(推荐)或其他语言的开发环境。 Go开发环境准备: 安装Go开发环境。安装包下载地址为:https://golang.org/dl/ 。(请选择1.9.2之后的版本) 各个系统对应的包名(以1.14版本为例) 操作系统 包名 Windows go1
return shim.Error(err.Error()) } return shim.Success(nil) } 父主题: 跨链智能合约方法示例
开发前准备 链代码(Chaincode)又称智能合约,在Hyperledger Fabric中是用Go、Java或Node.js语言编写的程序,主要用于操作账本上的数据。链代码是运行在区块链上的、特定条件下自动执行的代码逻辑,是用户利用区块链实现业务逻辑的重要途径。基于区块链特点
的B账户之间的资产转账。完整智能合约示例获取方法:登录可信跨链服务管理控制台,在“总览”页面的跨链链代码下载用于演示的业务链代码tcsexample.zip。 跨链资产数据锁定义 跨链智能合约方法定义 跨链智能合约方法示例 父主题: 跨链链代码开发(Hyperledger Fabric)
Errorf("failed to delete state: %v", err) } } return nil } 父主题: 跨链智能合约方法示例
return shim.Error(err.Error()) } return shim.Success(nil) } 父主题: 跨链智能合约方法示例
return shim.Error(err.Error()) } return shim.Success(nil) } 父主题: 跨链智能合约方法示例
return fmt.Errorf("account %s locked", account) } } 父主题: 跨链智能合约方法示例
Errorf("failed to unlock in rollbackRev: %v", err) } return nil } 父主题: 跨链智能合约方法示例
在跨链资产交换发起方所属区块链上执行的回滚操作 rollbackRecv 在跨链资产交换接收方所属区块链上执行的回滚操作 可在跨链智能合约按以下示例定义方法名常量与Invoke方法,确保已实现了必选方法: /* * Function name list of the TCS example
跨链资产数据锁定义 跨链资产交换基于分布式事务的两阶段提交实现,两阶段提交必须基于每个跨链资产单元携带的数据锁。跨链资产数据锁定义如下: type AccountLock struct { PreValue string CrossTXID string } 表1