如何将 Hyperledger fabric 2.0 链码从 sim 升级到合约 api
How to updgrade Hyperledgre farbic 2.0 chain-code from shim to contract api
我正在 hyperledger 升级到新版本 v2.0.1
,我的查询是我以前的链码版本 v1.4.3
在其实现中包含 shim 接口。如何将现有链更新为新版本的链码。旧的 shim 接口是否可以与新版本的链码一起使用?合约 Api 和 shim 接口有什么区别?任何建议都会有所帮助。
Fabric v2 继续支持合约 api 以及链码(垫片)api,因此您的链码实现应该可以在 fabric v2 没有变化的情况下工作。合约 api 是在 fabric 1.4 中引入的。合约接口提供了一些额外的功能和更加封装的编程模型。
关于我能找到的最好的显示差异就在这里 https://hyperledger.github.io/fabric-chaincode-node/release-2.0/api/index.html
它显示了每个编程模型的示例,但它们并不是特别擅长显示合同 api 相对于原始垫片 api 的好处。此外,我似乎无法在合同 api 提供的 2 或功能定义之间找到任何比较。简而言之
- 删除了所有链代码通常必须编写的一些样板代码(例如函数调度程序和序列化程序)
- 提供将多个合约捆绑到单个链代码包中的能力
- 根据需要向客户提供内省信息
- 可以通过定义的元数据定义(如果使用打字稿,可以从源代码生成)进行输入和输出类型检查
我正在 hyperledger 升级到新版本 v2.0.1
,我的查询是我以前的链码版本 v1.4.3
在其实现中包含 shim 接口。如何将现有链更新为新版本的链码。旧的 shim 接口是否可以与新版本的链码一起使用?合约 Api 和 shim 接口有什么区别?任何建议都会有所帮助。
Fabric v2 继续支持合约 api 以及链码(垫片)api,因此您的链码实现应该可以在 fabric v2 没有变化的情况下工作。合约 api 是在 fabric 1.4 中引入的。合约接口提供了一些额外的功能和更加封装的编程模型。 关于我能找到的最好的显示差异就在这里 https://hyperledger.github.io/fabric-chaincode-node/release-2.0/api/index.html 它显示了每个编程模型的示例,但它们并不是特别擅长显示合同 api 相对于原始垫片 api 的好处。此外,我似乎无法在合同 api 提供的 2 或功能定义之间找到任何比较。简而言之
- 删除了所有链代码通常必须编写的一些样板代码(例如函数调度程序和序列化程序)
- 提供将多个合约捆绑到单个链代码包中的能力
- 根据需要向客户提供内省信息
- 可以通过定义的元数据定义(如果使用打字稿,可以从源代码生成)进行输入和输出类型检查