Контракт.evaluateTransaction (fcn, args) совершает транзакцию во время запроса об одобрении пиров? - PullRequest
2 голосов
/ 02 июля 2019

Я использую Hyperledger Fabric 1.4 и сталкиваюсь с проблемой, когда запрашиваю с помощью узла sdk await contract.evaluateTransaction (fcn, args), я получаю эту ошибку: -

Errors: ["2 UNKNOWN: invalid txid. got [00ce5ece85f645e6781515b10c9325e4f6fa743bb49042c940900db4359a42d1], expected [66e0e0c782c4a17b5815255ce5685ceb088f0dd47639950c2462144318197004]"], stack=FabricError

Я простозапутался, что это создает новую транзакцию?Я читаю это здесь https://fabric -sdk-node.github.io / release-1.4 / module-fabric-network.Contract.html #valuTransaction__anchor пожалуйста, посмотрите, так как это мне не понятно.

1 Ответ

2 голосов
/ 02 июля 2019

Различия между valuTransaction и submitTransaction заключаются в том, что submitTransaction отправляет запросы соответствующим партнерам (соответствующим образом основанным на политике одобрения, если используется обнаружение службы, или всем партнерам в канале, если обнаружение службы не используется), и собирает ответы предложения транзакции.он получает обратно от запросов к одноранговым узлам и передает их заказчику для заказа и отправки одноранговым узлам для проверки и передачи в блокчейн.

EvaluateTransaction отправит запрос одному соответствующему узлу (то есть одному от вашей организации) и не отправляет ничего заказчику, а просто возвращает ответ приложению, выполняющему вызов.Вы обычно используете транзакцию оценки для выполнения запросов типа запроса.

Если вы посмотрите на сообщение об ошибке, то вы будете использовать неверный идентификатор транзакции, когда будете вызывать методrateTransaction.Если вы на самом деле не знаете, что делаете, лучше позволить, чтобыvaluTransaction сгенерировал для вас идентификатор транзакции.

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