Hyperledger fabric Hyperledger节点SDK-握手失败,出现致命错误SSL例程:tls\u进程\u服务器\u证书:证书验证失败

Hyperledger fabric Hyperledger节点SDK-握手失败,出现致命错误SSL例程:tls\u进程\u服务器\u证书:证书验证失败,hyperledger-fabric,hyperledger,hyperledger-fabric-ca,hyperledger-fabric-sdk-js,Hyperledger Fabric,Hyperledger,Hyperledger Fabric Ca,Hyperledger Fabric Sdk Js,我遵循此git存储库为hyperledger网络设置节点SDK:。我能够通过CLI调用/查询事务。但是,当我尝试使用Node SDK执行相同操作时,我无法将对等方添加到通道实例,它会抛出以下特定错误: E1219 19:56:36.154387360 20765 ssl_传输_安全。cc:1237]握手失败,出现致命错误ssl_错误_ssl:错误:1416F086:ssl例程:tls_进程_服务器_证书:证书验证失败 在上一步中,我可以向同一通道添加订购者,因此我无法理解其背后的逻辑。任何帮助都

我遵循此git存储库为hyperledger网络设置节点SDK:。我能够通过CLI调用/查询事务。但是,当我尝试使用Node SDK执行相同操作时,我无法将对等方添加到通道实例,它会抛出以下特定错误: E1219 19:56:36.154387360 20765 ssl_传输_安全。cc:1237]握手失败,出现致命错误ssl_错误_ssl:错误:1416F086:ssl例程:tls_进程_服务器_证书:证书验证失败

在上一步中,我可以向同一通道添加订购者,因此我无法理解其背后的逻辑。任何帮助都将不胜感激

const ordererCertPath = ORGS.orderer0.tls_cacerts;
const ordererCertData = fs.readFileSync(path.join(__dirname, ordererCertPath));
const ordererCert = Buffer.from(data).toString();

const peer0CertPath = ORGS.belrium.peers.peer1.tls_cacerts;
const peer0CertData = fs.readFileSync(path.join(__dirname, peer0CertPath));
const peer0Cert = Buffer.from(peer0CertData).toString();

let tlsInfo = null;

orgName = ORGS[userOrg].name;

let promise;
promise = Client.newDefaultKeyValueStore({
    path: testUtil.storePathForOrg(orgName)});

return e2eUtils.tlsEnroll(userOrg)
    .then((enrollment) => {
        console.log('Successfully retrieved TLS certificate');
        tlsInfo = enrollment;
        client.setTlsClientCertAndKey(tlsInfo.certificate, tlsInfo.key);
        return promise;
    }).then((store) => {
        if (store) {
            client.setStateStore(store);
        }
        return testUtil.getSubmitter(client, userOrg);
    }).then((admin) => {

        console.log('Successfully enrolled user \'admin\' (e2eUtil 3)');
        the_user = admin;

        channel.addOrderer(
            client.newOrderer(
                ORGS.orderer0.url,
                {
                    'pem': caroots,
                    'ssl-target-name-override': ORGS.orderer0['server-hostname']
                }
            )
        );


  //Error part starts here.....



            const peer = client.newPeer(
                ORGS.belrium.peers.peer1.requests,
                {
                    pem: peer0caroots,
                    'ssl-target-name-override': ORGS.#{userorg}.peers.peer1['server-hostname']
                }
            );
            channel.addPeer(peer);
            return channel.initialize();

验证组织定义及其证书,您可以将对等组织对等证书与CLI中使用的证书进行比较。

验证组织定义及其证书,您可以将对等组织对等证书与CLI中使用的证书进行比较