我正在尝试加入现有网络频道中的新组织。
我从结构文档中了解将组织加入频道的流程,但他们确实使用了 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": {
我附上了我得到的最新块文件。
请告诉我在哪里犯了错误,如果有任何参考,请提及。
实际上,最新的配置块是 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 并进行相应的更改。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句