java - HyperLedger Fabric JAVA 链码的 REST 服务
问题描述
我对区块链开发非常陌生,我开始了解用于许可区块链的超级账本结构。
我的任务是使用超级账本结构平台创建一个简单的区块链应用程序。
我想使用 Java SDK 开发 Chaincode。在这里,我也可以运行一个示例并使用命令行工具查询网络。
我不知道客户端(例如 Android 移动应用程序)如何与区块链通信。我们应该有 Web 服务(API),以便任何客户端应用程序都可以与区块链(Android、iPhone、AngularJS)进行通信。
我可以使用超级账本作曲家创建 REST 服务,但我发现,出于开发目的,作曲家是不可行的。
我有以下问题,
1)如何为我的 Hyperledger Fabric 网络创建 REST 服务(链代码应该是 Java 语言)?
2)从长远来看,Hyperledger Composer 真的不可靠吗?
感谢,
解决方案
1) Chaincode 可以是 Java 语言,这没问题。对于 API Rest,您可以使用 Java SDK 调用链代码并接收来自客户端的调用。
https://github.com/hyperledger/fabric-sdk-java
https://github.com/hyperledger/fabric-chaincode-java
因此,您最终将拥有一个使用结构 sdk 调用链码的 API Rest。该 API 将在区块链之外执行,带有 java 的链代码将接收来自 API 的调用并将在区块链上执行。
Here你有一个关于如何使用fabric SDK的教程
https://codeburst.io/a-concise-tutorial-on-working-with-hyperledger-fabric-java-sdk-a6f11d8bb5b0
2)这只是我的看法,Composer 适合快速 POC,但仅此而已。它有其局限性,不像在超级账本结构上那样灵活。
推荐阅读
- ruby-on-rails - 如何修复 SQpayment 表单不生成或将 nonce 传递给控制器?
- jquery - 如何使用jQuery将元素添加到表单中并将其加载到对话框中
- python - 迭代数据框列:TypeError: 'float' object is not subscriptable
- python - 无法获取存储在 Python Django 请求会话中的值
- android - 使用分页库和导航架构组件在片段中保持 recyclerview 的状态
- c++ - 使用 SIMD 将累积(单个)值打包成两个值管理清理代码循环的方法是什么?
- reactjs - 父元素如何调用在子元素上定义的函数?
- linkedin - 如何删除Linkedin中的应用程序?
- excel - 格式化单元格而不直接覆盖内容
- python - 如何获取列中最频繁的类别并将其余的计数存储在另一列中