检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
跨链触发交易 功能介绍 发起由源端区块链到目标端区块链的跨链交易 URI POST /v1/cross/transaction/invoke 请求参数 表1 请求Body参数 参数 是否必选 参数类型 描述 from_chaincode_id 是 String 源端链码名称 最小长度
下载配置文件和证书 安装和实例化链代码完成后,下载配置文件和证书,用于在跨链服务中注册区块链。 操作步骤 在“服务管理”界面,在Cross-ChainA服务卡片中,单击“获取客户端配置”。 勾选“SDK文件”,配置参数请参考表1。
跨链链代码开发(Hyperledger Fabric) 开发前准备 开发跨链智能合约
操作步骤 选择名为Cross-ChainA的区块链服务卡片,单击“区块链管理”。 输入用户名,密码,单击“登录”。 用户名为admin,初始登录密码为您在部署区块链服务时设置的区块链管理初始密码。
可信跨链服务基于分布式事务两阶段提交的思想设计了一套能确保全局事务保持一致性的跨链资产交换流程。若您的跨链业务不涉及跨链资产交换,则无需定制编写跨链智能合约,否则需设置跨链资产数据锁与跨链智能合约方法。
下载源码包 下载Fabric源码包作为三方库。可选择使用1.x或2.x风格开发跨链智能合约: 版本 链接 1.x https://github.com/hyperledger/fabric/tree/release-1.4 2.x https://github.com/hyperledger
开发环境准备 请根据自身业务选择Go(推荐)或其他语言的开发环境。 Go开发环境准备: 安装Go开发环境。安装包下载地址为:https://golang.org/dl/ 。(请选择1.9.2之后的版本) 各个系统对应的包名(以1.14版本为例) 操作系统 包名 Windows go1.14
解锁跨链资产(unlockAccount) 在跨链资产交换即将完成时,需要解锁跨链资产交换中涉及的资产。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是commitSend、commitRecv、rollbackSend与rollbackRecv)中调用: /*
修改跨链资产数值(putStateWithLock) 在跨链资产交换涉及的智能合约方法中,所有对跨链资产的修改都必须与资产上锁同时进行。可将上述逻辑封装至一个方法中,便于后续在其他智能合约方法(主要是preCommitSend与preCommitRecv)中调用: /* *
交易发起方预提交(preCommitSend) 该方法用于在跨链资产交换发起方所属区块链上执行预提交操作,即修改发起方所属区块链上对应资产的值,并对该资产上锁。 本例中,该方法将修改发起方所属区块链上args[0]对应账户的余额为跨链资产交换完成后的数值,同时对该账户上锁,并在数据锁中保存跨链资产交换发生前该账户的余额
交易发起方提交(commitSend) 该方法用于在跨链资产交换发起方所属区块链上执行提交操作,即解锁发起方所属区块链上对应资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将删除发起方所属区块链上args[0]对应的数据锁,代表该笔跨链资产交换操作在发起方已端到端完成。unlockAccount
交易发起方回滚(rollbackSend) 该方法用于在跨链资产交换发起方所属区块链上执行回滚操作,即还原发起方所属区块链上对应资产至跨链资产交换开始前的状态,并解锁该资产,使得其可以继续处理下一笔跨链操作。 本例中,该方法将根据发起方所属区块链上args[0]对应数据锁中的PreValue