Hyperledger fabric Hyperledger fabric 2.0.1与4订购方的连接配置文件面临问题
下面是我的连接配置文件,用于尝试使用javascript连接到hyperledger结构网络Hyperledger fabric Hyperledger fabric 2.0.1与4订购方的连接配置文件面临问题,hyperledger-fabric,hyperledger,Hyperledger Fabric,Hyperledger,下面是我的连接配置文件,用于尝试使用javascript连接到hyperledger结构网络v2.0.1。我指的是测试网络。当我尝试查询或调用时,我已经创建了5个有序的2组织,我面临一个错误,如下所示。请帮我做这个 (节点:18278)未处理的PromiserEjectionWarning:错误:必须连接背书人 在Channel.addEndorser(/Users/nagaraj/gowork/src/github.com/hyperledger-fabric-2.0/javascript/n
v2.0.1
。我指的是测试网络。当我尝试查询或调用时,我已经创建了5个有序的2组织,我面临一个错误,如下所示。请帮我做这个
(节点:18278)未处理的PromiserEjectionWarning:错误:必须连接背书人
在Channel.addEndorser(/Users/nagaraj/gowork/src/github.com/hyperledger-fabric-2.0/javascript/node_modules/fabric common/lib/Channel.js:259:10)
在buildChannel(/Users/nagaraj/gowork/src/github.com/hyperledger-fabric-2.0/javascript/node_modules/fabric network/lib/impl/ccp/networkconfig.js:52:21)
在Function.loadFromConfig(/Users/nagaraj/gowork/src/github.com/hyperledger-fabric-2.0/javascript/node_modules/fabric network/lib/impl/ccp/networkconfig.js:37:17)
在处理和拒绝时(内部/process/task_queues.js:97:5)
在async Gateway.connect(/Users/nagaraj/gowork/src/github.com/hyperledger-fabric-2.0/javascript/node_modules/fabric network/lib/Gateway.js:171:13)
异步main(/Users/nagaraj/gowork/src/github.com/hyperledger-fabric-2.0/javascript/invoke.js:32:9)
(节点:18278)未处理的PromiserEjectionWarning:未处理的承诺拒绝。此错误源于在没有catch块的异步函数中抛出,或者拒绝未使用.catch()处理的承诺。要在未处理的承诺拒绝时终止节点进程,请使用CLI标志--unhandled rejections=strict
(请参阅)。(拒绝id:1)
2020-05-14T07:43:29.964Z-错误:[ServiceEndpoint]:错误:在提交者的截止日期之前连接失败-名称:order1.example.com:7050,url:grpcs://localhost:7050
2020-05-14T07:43:29.966Z-错误:[ServiceEndpoint]:waitForReady-无法连接到远程gRPC服务器Order1.example.com:7050 url:grpcs://localhost:7050 超时:3000
2020-05-14T07:43:29.966Z-错误:[发现服务]:_buildOrderer[mychannel]-无法连接到发现的orderer Order1.example.com:7050,原因是:未能在提交人的截止日期之前连接-名称:Order1.example.com:7050,url:grpcs://localhost:7050
{
"name": "test-network-org1",
"version": "1.0.0",
"client": {
"organization": "Org1",
"connection": {
"timeout": {
"peer": {
"endorser": "300"
}
}
}
},
"channels": {
"mychannel": {
"orderers": [
"orderer.example.com",
"orderer1.example.com",
"orderer2.example.com",
"orderer3.example.com",
"orderer4.example.com"
],
"peers": [
"peer0.org1.example.com",
"peer0.org1.example.com"
]
}
},
"organizations": {
"Org1": {
"mspid": "Org1MSP",
"peers": [
"peer0.org1.example.com"
],
"certificateAuthorities": [
"ca.org1.example.com"
]
}
},
"orderers": {
"orderer.example.com": {
"url": "grpcs://localhost:7050",
"grpcOptions": {
"ssl-target-name-override": "orderer.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n -----END CERTIFICATE-----\n"
}
},
"orderer1.example.com": {
"url": "grpcs://localhost:7082",
"grpcOptions": {
"ssl-target-name-override": "orderer1.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n -----END CERTIFICATE-----\n"
}
},
"orderer2.example.com": {
"url": "grpcs://localhost:7084",
"grpcOptions": {
"ssl-target-name-override": "orderer2.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n -----END CERTIFICATE-----\n"
}
},
"orderer3.example.com": {
"url": "grpcs://localhost:7086",
"grpcOptions": {
"ssl-target-name-override": "orderer3.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n -----END CERTIFICATE-----\n"
}
},
"orderer4.example.com": {
"url": "grpcs://localhost:7088",
"grpcOptions": {
"ssl-target-name-override": "orderer4.example.com"
},
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n -----END CERTIFICATE-----\n"
}
}
},
"peers": {
"peer0.org1.example.com": {
"url": "grpcs://localhost:7051",
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n-----END CERTIFICATE-----\n"
},
"grpcOptions": {
"ssl-target-name-override": "peer0.org1.example.com",
"hostnameOverride": "peer0.org1.example.com"
}
},
"peer1.org1.example.com": {
"url": "grpcs://localhost:7062",
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n-----END CERTIFICATE-----\n"
},
"grpcOptions": {
"ssl-target-name-override": "peer1.org1.example.com",
"hostnameOverride": "peer1.org1.example.com"
}
}
},
"certificateAuthorities": {
"ca.org1.example.com": {
"url": "https://localhost:7054",
"caName": "ca-org1",
"tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n-----END CERTIFICATE-----\n"
},
"httpOptions": {
"verify": false
}
}
}
}
背书属性定义不正确,并且通道块下的对等点定义错误。这就是它抛出背书人问题的原因。添加突出显示的更改
"channels": {
"mychannel": {
"orderers": [
"orderer.example.com",
"orderer1.example.com",
"orderer2.example.com",
"orderer3.example.com",
"orderer4.example.com"
],
"peers": [
"peer0.org1.example.com",
"peer0.org1.example.com" //this should be "peer1.org1.example.com"
]
}
},
连接配置文件还应该包括endorsingPeer属性和下面给出的其他详细信息
1.4结构网络示例网络连接配置文件
name: "Network"
version: "1.0"
channels:
mychannel:
orderers:
- orderer.example.com
peers:
peer0.org1.example.com:
endorsingPeer: true
chaincodeQuery: true
ledgerQuery: true
eventSource: true
peer0.org2.example.com:
endorsingPeer: true
chaincodeQuery: false
ledgerQuery: true
eventSource: false
organizations:
Org1:
mspid: Org1MSP
peers:
- peer0.org1.example.com
certificateAuthorities:
- ca-org1
adminPrivateKey:
path: test/fixtures/channel/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/keystore/9022d671ceedbb24af3ea69b5a8136cc64203df6b9920e26f48123fcfcb1d2e9_sk
signedCert:
path: test/fixtures/channel/crypto-config/peerOrganizations/org1.example.com/users/Admin@org1.example.com/signcerts/Admin@org1.example.com-cert.pem
Org2:
mspid: Org2MSP
peers:
- peer0.org2.example.com
certificateAuthorities:
- ca-org2
adminPrivateKey:
path: test/fixtures/channel/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/keystore/5a983ddcbefe52a7f9b8ee5b85a590c3e3a43c4ccd70c7795bec504e7f74848d_sk
signedCert:
path: test/fixtures/channel/crypto-config/peerOrganizations/org2.example.com/users/Admin@org2.example.com/signcerts/Admin@org2.example.com-cert.pem
orderers:
orderer.example.com:
url: grpcs://localhost:7050
grpcOptions:
ssl-target-name-override: orderer.example.com
grpc-max-send-message-length: 4194304
tlsCACerts:
path: test/fixtures/channel/crypto-config/ordererOrganizations/example.com/orderers/orderer.example.com/tlscacerts/example.com-cert.pem
peers:
peer0.org1.example.com:
url: grpcs://localhost:7051
grpcOptions:
ssl-target-name-override: peer0.org1.example.com
grpc.keepalive_time_ms: 600000
tlsCACerts:
path: test/fixtures/channel/crypto-config/peerOrganizations/org1.example.com/peers/peer0.org1.example.com/tlscacerts/org1.example.com-cert.pem
peer0.org2.example.com:
url: grpcs://localhost:8051
grpcOptions:
ssl-target-name-override: peer0.org2.example.com
tlsCACerts:
path: test/fixtures/channel/crypto-config/peerOrganizations/org2.example.com/peers/peer0.org2.example.com/tlscacerts/org2.example.com-cert.pem
certificateAuthorities:
ca-org1:
url: https://localhost:7054
httpOptions:
verify: false
tlsCACerts:
path: test/fixtures/channel/crypto-config/peerOrganizations/org1.example.com/ca/org1.example.com-cert.pem
registrar:
- enrollId: admin
enrollSecret: adminpw
caName: caorg1
ca-org2:
url: https://localhost:8054
httpOptions:
verify: false
tlsCACerts:
path: test/fixtures/channel/crypto-config/peerOrganizations/org2.example.com/ca/org2.example.com-cert.pem
registrar:
- enrollId: admin
enrollSecret: adminpw
caName: caorg2