从java SDK创建的频道
Channel newChannel = hfclient.
newChannel("foo", anOrderer, channelConfiguration, channelConfig);
在 docker 容器中成功创建日志通道
问题:
- 无法创建同名频道 - 收到 400 错误请求 频道存在?
- 我无法按名称获取频道 hfclient.getChannel("( = null
- 如何获得创建的频道?
- 如何从 docker 容器检查现有通道的列表?
您可以通过调用 CSCC(配置系统链码(来查询可用通道,它提供以下 API:
// These are function names from Invoke first parameter
const (
JoinChain string = "JoinChain"
GetConfigBlock string = "GetConfigBlock"
GetChannels string = "GetChannels"
)
Java SDK代码看起来像这样:
final Channel channel = client.newChannel("");
channel.addOrderer(client.newOrderer("orderer0", "grpc://localhost:7050"));
channel.addPeer(client.newPeer("peer0", "grpc://localhost:7051"));
channel.initialize();
final TransactionProposalRequest proposalRequest = client.
newTransactionProposalRequest();
final ChaincodeID chaincodeID = ChaincodeID.newBuilder()
.setName("cscc")
.setPath("github.com/C0rWin/pgdays/chaincode/personsV3")
.build();
proposalRequest.setChaincodeID(chaincodeID);
proposalRequest.setFcn("GetChannels");
proposalRequest.setProposalWaitTime(TimeUnit.SECONDS.toMillis(10));
final Collection<ProposalResponse> responses = channel.
sendTransactionProposal(proposalRequest);