问题描述
在Hyperledger Fabric中,服务发现是否支持查找用于私有数据收集(PDC)的查询对等体。
在由2个组织(org1和org2)组成的通道中,如果我仅为org1创建一个PDC,则只有org1中的对等方拥有私有数据。如果在PDC收集配置文件中指定memberReadOnly = false,则它允许org2用户查询org1对等方以读取私有数据。 但这需要对等方和Fabric Java SDK中的服务发现的支持。
我们要实现的目标是通过Java SDK在客户端以org2用户身份进行,当调用链码读取私有数据时,SDK将自动连接到org1对等端。
当前支持吗?
解决方法
是的,发现支持私有数据。
如果您查看实现了客户端API(除SDK外)的discovery CLI,您会发现endorsement query具有一个--collection
标志。
例如,对--chaincode=cc1 --chaincode=cc2 --collection=cc2:col1
命令使用以下标志discover endorsers
意味着您要询问有关写入链代码cc1
和cc2
以及在调用{{ 1}}您正在/从集合cc2
中读取/读取。
在Fabric 2.1中,我们添加了另一个标志col
,它暗示发现您只想向集合中写入但不从集合中读取。