Hyperledger作曲家多用户身份

时间:2017-09-07 03:40:23

标签: hyperledger-composer

我正在关注以下教程

https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html

我能够完成这些步骤,直到设置默认钱包身份。在此之后,当我尝试系统ping方法时,我得到了错误。

{
  "error": {
    "statusCode": 500,
    "name": "Error",
    "message": "Error trying to ping. Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The current identity has not been registered:maeid1)",
    "stack": "Error: Error trying to ping. Error: Error trying to query chaincode. Error: chaincode error (status: 500, message: Error: The current identity has not been registered:maeid1)\n    at _checkRuntimeVersions.then.catch (/home/praval/.nvm/versions/node/v6.11.1/lib/node_modules/composer-rest-server/node_modules/composer-connector-hlfv1/lib/hlfconnection.js:696:34)"
  }
}

从访问令牌进行测试时遇到的错误。

curl -v http://localhost:3000/api/system/ping?access_token=xxxxx

虽然我可以成功运行网络ping。

composer network ping -p hlfv1 -n 'digitalproperty-network' -i maeid1 -s NfUhmXtiaSUH

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

此问题描述了您遇到的问题 https://github.com/hyperledger/composer/issues/1761

CLI和Rest服务器都已注册用户,但这会导致两个环境存储不同的相同标识的证书(例如问题和到期日期)。无论哪个环境首先使用其证书作为该标识,并激活运行时中的身份/参与者已注册其证书。当其他环境出示其证书时,它没有找到(因为它与第一个环境不同),因此报告该身份未被注册。

解决这个问题的方法是,如果您打算在其余服务器中使用该身份,请先从CLI ping它。