Blockchain 如何在Hyperledger 1.0(节点SDK)中获取所有现有频道

Blockchain 如何在Hyperledger 1.0(节点SDK)中获取所有现有频道,blockchain,hyperledger-fabric,hyperledger,Blockchain,Hyperledger Fabric,Hyperledger,我正在Hyperledger 1.0中使用Node SDK,希望检查是否存在具有特定名称的频道。是否有办法查询所有现有频道?有没有办法通过名称获得频道 您无法查看所有可用通道,但可以利用(配置系统链码)GetChannel API获取符合客户端条件的通道列表。您只需要调用名为CSCC的链码 CSCC是系统链码,这意味着它固有地内置在对等二进制文件中,并在对等启动期间加载和“实例化”。你可以找到细节。考虑到NodeJS,请求将如下所示 const request = { chaincodeId

我正在Hyperledger 1.0中使用Node SDK,希望检查是否存在具有特定名称的频道。是否有办法查询所有现有频道?有没有办法通过名称获得频道

您无法查看所有可用通道,但可以利用(配置系统链码)GetChannel API获取符合客户端条件的通道列表。您只需要调用名为CSCC的链码

CSCC是系统链码,这意味着它固有地内置在对等二进制文件中,并在对等启动期间加载和“实例化”。你可以找到细节。考虑到NodeJS,请求将如下所示

const request = {
  chaincodeId : "cscc",
  txId: 213213123123, // Some random transaction id
  fcn: "GetChannels",
  args: ['']
}
顺便说一句,您还可以使用对等cli执行此操作:

peer channel list

但我想在实例化链码之前,而不是之后,知道通道是否存在。那么,有没有一种方法可以从客户端节点sdk实现这一点呢?这是一个内置的系统链码,不需要实例化它。在使用链码执行任何操作之前,只需直接调用它。您有一个输入错误“GetChannles”不是“GetChannels”,这只为每个对等方获取它,对吗?不是网络?它仅为背书对等方获取此信息,并提供有关已加入背书对等方的渠道的信息。