从 java SDK 创建 channel
Channel newChannel = hfclient.
newChannel("foo", anOrderer, channelConfiguration, channelConfig);
在docker容器中日志 channel 创建成功
问题:
- 无法创建同名 channel - 收到 400 BAD REQUEST channel 存在吗?
- 我无法按名称获取 channel hfclient.getChannel("") = null
- 如何创建 channel ?
- 如何检查 docker 容器中的现有 channel 列表?
最佳答案
您可以通过调用 CSCC 查询可用 channel (配置系统链码),提供以下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);
关于hyperledger-fabric - Hyperledger Fabric 1.0 如何通过名称获取 channel ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45573727/