【问题标题】:Hyperledger Fabric invoking chaincode from Node.js using user artifacts generated by configtxgen. How?Hyperledger Fabric 使用 configtxgen 生成的用户工件从 Node.js 调用链代码。如何?
【发布时间】:2020-03-31 10:47:09
【问题描述】:

如果我理解正确的话,Node.js 客户端示例会注册用户、创建钱包,然后利用这些新生成的身份来执行交易。同时,fabric-tools/CLI 的示例利用 configtxgen 生成的身份/用户,没有正在进行的注册或钱包创建。我可以让这两个示例都运行以达到我的目的。

我想念的是使用 configtxgen 从 Node.js 客户端生成的管理员/用户、为他们创建钱包等的示例?这样的例子存在吗?感谢您的帮助。

【问题讨论】:

    标签: hyperledger-fabric hyperledger hyperledger-fabric-ca hyperledger-chaincode hyperledger-fabric-sdk-js


    【解决方案1】:

    您可以简单地从文件中读取,保存到钱包中并像以前一样继续。

    适当地声明或替换变量:

            let identity0;
            let wallet0 = new FileSystemWallet(wallet0Path);
            let exists0 = await wallet0.exists(wallet0ID);
            if (!exists0) {
                let user0CertPemRead = fs.readFileSync(user0CertPath).toString('utf8');
                let user0PrvKeyPemRead = fs.readFileSync(user0KeyPath).toString('utf8');
                identity0 = X509WalletMixin.createIdentity(mspID0, user0CertPemRead, user0PrvKeyPemRead);
                await wallet0.import(wallet0ID, identity0);
            } else {
                identity0 = await wallet0.export(wallet0ID);
            }
    

    【讨论】:

    • 谢谢。看起来很简单。我试试看!
    • 你知道如何让它在不允许保存文件的只读文件系统下工作吗?
    • 奇怪的环境...使用InMemoryWallet 而不是FileSystemWallet。我从来没有做过,但它确实有效。 hyperledger.github.io/fabric-sdk-node/release-1.4/…
    猜你喜欢
    • 1970-01-01
    • 2023-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多