我正在尝试在现有网络的渠道中加入新组织。
我了解从fabric documentation将组织加入频道的流程,但是他们确实使用了docker。
我想使用node-sdk完成相同的操作。
要获取通道的最新配置块,我正在使用以下方法:
<async> getChannelConfig(target, timeout)
<async> getChannelConfigFromOrderer()
https://fabric-sdk-node.github.io/release-1.4/Channel.html#getChannelConfig__anchor
两者都返回相同的结果。其类型为 common.ConfigEnvelope 。
这不是 common.Block 。
它正在根据文档返回一个对象,我将其另存为json文件。
当我阅读它时,它没有以下目的必需的字段。
{"channel_group":{"groups":{"Application":{"groups": {
我将附上最新的file块。
请告诉我我在哪里犯错,如果对此有任何参考,请提及。
答案 0 :(得分:0)
实际上,最新的配置块是protobuf对象。
因此,当我尝试将其另存为json时,其格式未正确设置为json。
为此,首先将其转换为缓冲区并保存。
// return latest config block as protobuf object
const latestConfig = await getChannelConfigFromOrderer();
const latestConfigBuffer = latestConfig.toBuffer();
// save it in .pb format
fs.writeFileSync("latest-config.pb", latestConfigBuffer);
然后使用configtxlator将其转换为json并进行相应的更改。