我想知道是否可以使用passport-http来保护使用composer-rest-server生成的Hyperledger Composer的REST API,以及导出的COMPOSER_PROVIDERS ='{}'配置.
我们的想法是使用先前生成的标识并将其分配给参与者,并使用编写器对API上的GET和POST请求进行身份验证.
如果可能的话,userID和userSecret如何作为一个特殊的http头传递到正文中或作为一个简单的基本身份验证头?
我目前正在使用hyperledger fabric + composer进行POC.当它达到orderers之间的共识机制时,我有点困惑.据我所知阅读文档,hyperledger目前仅支持SOLO和KAFKA.我对SOLO的理解是网络只存在于单个排序节点之外,并且在orderers之间没有达成网络共识(仅存在1个).
但这对我来说没有意义; 我的直觉告诉我,必须可以在不使用KAFA/Zookeeper的情况下添加多个订货人,并且超级订购者有另一种机制可以在这两者之间达成共识.关于这个的文档有些参差不齐,如果我试图谷歌它,所以我希望有人可以解决这个问题.
如果除了集中式平台之外没有共识机制,那么分布式账本平台的重点是什么?
我已经完成了Hyperledger Composer教程,并成功地在本地部署/运行了它(使用composer-rest-server)。
现在,我想部署它(例如Google Cloud),以便向外部人员展示它,但是我对现在该做什么感到困惑,而且还没有找到适合该“下一步”的任何教程。
由于composer在结构上运行,我想我需要使结构运行-但这由许多正在运行的docker容器组成。所以我想我应该将所有这些收集在一个堆栈文件或类似文件中(对吗?)。
问题:除了本地部署/运行Hyperledger Fabric / Composer并将其部署到某处之外,您将如何前进?(我知道有很多方法可以做到这一点,但是我希望能得到一些一般性的指导以及一些具体的例子)
如何完全卸载Hyperledger Composer(和底层Hyperledger Fabric),包括所有依赖项,docker镜像和node/npm模块?
我在安装时遵循了以下设置:https://hyperledger.github.io/composer/installing/development-tools.html
我已经做了以下事情:
npm uninstall -g composer-cli
npm uninstall -g composer-rest-server
npm uninstall -g generator-hyperledger-composer
npm uninstall -g yo
npm uninstall -g composer-playground
Run Code Online (Sandbox Code Playgroud) 我正在按照这个简单的教程来设置我的开发环境.一切顺利,直到我触发./createPeerAdminCard.sh,如下所示给出错误
Hyperledger Fabric控件的仅开发脚本运行'createPeerAdminCard.sh'FABRIC_VERSION设置为'hlfv11'FABRIC_START_TIMEOUT未设置,假设15(秒)
在v0.17.4使用composer-cli
成功创建了业务网卡文件到输出文件:/tmp/PeerAdmin@hlfv1.card
命令成功
错误:未提供连接类型,可能是因为连接配置文件未定义"x-type"属性.命令失败
我在ubuntu 16.04上使用的是作曲家版本v0.17.4和1.1.0 - alpha的结构
我正在尝试使用超级账本编辑器建立网络,为此我按照 开发人员教程创建了超级账本编写器解决方案, 但是当我使用以下命令时
composer network start --networkName tutorial-network --networkVersion
0.0.1 --networkAdmin admin --networkAdminEnrollSecret adminpw --card PeerAdmin@hlfv1 --file networkadmin.card
Run Code Online (Sandbox Code Playgroud)
它给出了以下错误:
Starting business network tutorial-network at version 0.0.1
Processing these Network Admins: userName: admin
? Starting business network definition. This may take a minute...
**Error: Error trying to start business network. Error: No valid responses from any peers.** Response from attempted peer comms was an error: **Error: 2 UNKNOWN: error starting container: Failed to generate platform-specific docker build: Error returned …Run Code Online (Sandbox Code Playgroud) 我正在尝试根据此指令在Ubuntu上安装Hyperledger Composer先决条件,但是我收到错误:不支持Ubuntu bionic.
我正在尝试在我的机器Ubuntu 18.04上安装hyperledger composer
我收到以下错误
错误:Ubuntu仿生不支持hyperledger composer
有人帮我解决这个问题
我在hyperledger composer app的query.qry文件中定义了一个查询:
query selectPersonsByHobby {
description: "Select all persons with a certain hobby."
statement:
SELECT org.comp.myapp.Person
WHERE (passTime CONTAINS (name == _$targetHobby ))
}
Run Code Online (Sandbox Code Playgroud)
这是模型文件的相关部分:
participant Person identified by id {
o String id
o String firstName
o String lastName
o String email
o Interest[] passTime
}
concept Interest {
o String name
o String description
}
Run Code Online (Sandbox Code Playgroud)
如何从我的角度应用程序访问查询并传递参数;?
以下是正确的吗?:
return this.httpClient.get(`http://localhost:3000/api/queries/selectPersonsByHobby`, {_$targetHobby: "Football"});
Run Code Online (Sandbox Code Playgroud) 在我的hyperledger作曲家应用程序中,我有客户和顾问.客户对已添加到其"readAccessList"中的顾问具有读取权限.
以下是这两种参与者类型的模型:
participant Client identified by id {
o String id
o String name
--> Consultant[] readAccessList optional
}
participant Consultant identified by id {
o String id
o String name
o String text
}
Run Code Online (Sandbox Code Playgroud)
将顾问添加到客户端的readAccessList的事务定义如下:
transaction AddToReadableConsultantsOfClient {
--> Client client
--> Consultant[] newReadableConsultants
}
Run Code Online (Sandbox Code Playgroud)
此事务的事务处理器功能如下:
/**
* transaction AddToReadableConsultantsOfClient
* @param {org.comp.myapp.AddToReadableConsultantsOfClient} transaction
* @transaction
*/
async function addToReadableConsultantsOfClient(transaction) {
// Save the old version of the client:
const clientOld = transaction.client;
// Update the client with the …Run Code Online (Sandbox Code Playgroud)