Hyperledger - Fabric Node SDK - Ошибка свойства кривой - PullRequest
0 голосов
/ 08 октября 2018

У меня возникают проблемы при развертывании проекта узла в Heroku.

Получена постоянная ошибка, связанная с зависимостью пакета fabri-client.

Ошибка: "Cannot read property 'curve' of undefined".Мне не совсем понятно, почему.

Все сгенерированные файлы уже были проверены (файлы сертификатов, pem и все файлы конфигурации).И он в точности равен производственному и локальному.

Похоже, что ошибка в том, что какой-то файл или свойство не могут быть прочитаны.Я уже много искал и ничего не нашел.

2018-10-08T13:13:24.139587+00:00 app[web.1]: [31merror[39m: [Client.js]: Failed to load user "admin" from local key value store. Error: TypeError: Cannot read property 'curve' of undefined 2018-10-08T13:13:24.139597+00:00 app[web.1]: at Object.KEYUTIL.getKey (/app/node_modules/fabric-client/node_modules/jsrsasign/lib/jsrsasign.js:247:10378) 2018-10-08T13:13:24.139599+00:00 app[web.1]: at CryptoSuite_ECDSA_AES.getKey (/app/node_modules/fabric-client/lib/impl/CryptoSuite_ECDSA_AES.js:204:27) 2018-10-08T13:13:24.139602+00:00 app[web.1]: at <anonymous> 2018-10-08T13:13:24.139737+00:00 app[web.1]: [31merror[39m: [Client.js]: Failed to load an instance of requested user "admin" from the state store on this Client instance. Error: TypeError: Cannot read property 'curve' of undefined 2018-10-08T13:13:24.139740+00:00 app[web.1]: at Object.KEYUTIL.getKey (/app/node_modules/fabric-client/node_modules/jsrsasign/lib/jsrsasign.js:247:10378) 2018-10-08T13:13:24.139742+00:00 app[web.1]: at CryptoSuite_ECDSA_AES.getKey (/app/node_modules/fabric-client/lib/impl/CryptoSuite_ECDSA_AES.js:204:27) 2018-10-08T13:13:24.139743+00:00 app[web.1]: at <anonymous> 2018-10-08T13:13:24.140035+00:00 app[web.1]: ERRO: TypeError: Cannot read property 'curve' of undefined 2018-10-08T13:13:24.140037+00:00 app[web.1]: at Object.KEYUTIL.getKey (/app/node_modules/fabric-client/node_modules/jsrsasign/lib/jsrsasign.js:247:10378) 2018-10-08T13:13:24.140039+00:00 app[web.1]: at CryptoSuite_ECDSA_AES.getKey (/app/node_modules/fabric-client/lib/impl/CryptoSuite_ECDSA_AES.js:204:27) 2018-10-08T13:13:24.140041+00:00 app[web.1]: at <anonymous> 2018-10-08T13:13:30.471688+00:00 heroku[router]: at=info method=POST path="/add_id" host=damp-lowlands-60646.herokuapp.com request_id=a13c1b5d-31f0-4e24-aabb-8733b102cf18 fwd="201.48.168.28" dyno=web.1 connect=1ms service=53ms status=500 bytes=322 protocol=https 2018-10-08T13:13:30.463089+00:00 app[web.1]: [31merror[39m: [Client.js]: Failed to load user "admin" from local key value store. Error: TypeError: Cannot read property 'curve' of undefined 2018-10-08T13:13:30.463101+00:00 app[web.1]: at Object.KEYUTIL.getKey (/app/node_modules/fabric-client/node_modules/jsrsasign/lib/jsrsasign.js:247:10378) 2018-10-08T13:13:30.463103+00:00 app[web.1]: at CryptoSuite_ECDSA_AES.getKey (/app/node_modules/fabric-client/lib/impl/CryptoSuite_ECDSA_AES.js:204:27) 2018-10-08T13:13:30.463105+00:00 app[web.1]: at <anonymous> 2018-10-08T13:13:30.466974+00:00 app[web.1]: [31merror[39m: [Client.js]: Failed to load an instance of requested user "admin" from the state store on this Client instance. Error: TypeError: Cannot read property 'curve' of undefined 2018-10-08T13:13:30.466978+00:00 app[web.1]: at Object.KEYUTIL.getKey (/app/node_modules/fabric-client/node_modules/jsrsasign/lib/jsrsasign.js:247:10378) 2018-10-08T13:13:30.466980+00:00 app[web.1]: at CryptoSuite_ECDSA_AES.getKey (/app/node_modules/fabric-client/lib/impl/CryptoSuite_ECDSA_AES.js:204:27) 2018-10-08T13:13:30.466982+00:00 app[web.1]: at <anonymous> 2018-10-08T13:13:30.468452+00:00 app[web.1]: Failed to invoke successfully :: TypeError: Cannot read property 'curve' of undefined

Спасибо!

Ответы [ 2 ]

0 голосов
/ 21 июля 2019

Это связано с недействительными / просроченными сертификатами в папке fabric-client-kv- *.

Решение:

  1. Удаление или резервное копирование содержимого Fabric-client-kv- * folder.
  2. Зарегистрируйте администратора снова.
  3. Зарегистрируйте обычного пользователя сейчас.

Если вы не можете найти папку сертификата, найдите строку ниже.в вашей программе

var store_path = path.join(__dirname, 'hfc-key-store');

или

  credentialStore:
    # [Optional]. Specific to FileKeyValueStore.js or similar implementations in other SDKs. Can be others
    # if using an alternative impl. For instance, CouchDBKeyValueStore.js would require an object
    # here for properties like url, db name, etc.
    path: "./fabric-client-kv-org1"

"hfc-key-store" или "fabric-client-kv-org1" - это папка, содержащая сертификаты.

0 голосов
/ 15 февраля 2019

У меня была та же проблема, для меня сработало следующее:

  1. Убедитесь, что вы используете последние версии "fabric-ca-client" и "fabric-client" в вашем пакете.json для узловых модулей (в основном это должно соответствовать версии матрицы, к которой вы пытаетесь подключиться).
  2. Используйте последнюю версию invoke.js / query.js, которая предоставляется вместе с примером приложения (fabcar) (в более новой версии есть некоторые незначительные отличия).

ПРИМЕЧАНИЕ: В моем случае проблема возникла из-за того, что я использовал версию клиентского кода 1.3, где в качестве матрицы гипертелджера была версия 1.4

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...