Hyperledger Fabric java 如何使用 getQueryResult()

Hyperledger Fabric java how to use getQueryResult()

我正在尝试在交易中使用 getQueryResult() 方法,但我无法理解我必须在该方法中传递什么类型的字符串。 我有一个由 id、name、surname 和 hash 组成的资产。我想验证分类帐中是否不存在哈希。 底层数据库是couchdb。 我使用的所有字符串都返回了一个错误。有人可以帮我使用正确的语法吗? 谢谢

以 JSON 格式保存数据,然后通过 'couch db' 查询此方法以获得答案。

您必须传递的字符串必须采用 couchdb 选择器语法,请参见此处: https://docs.couchdb.org/en/latest/api/database/find.html#find-selectors hyperledger fabric 教程在这里提到了这一点: https://hyperledger-fabric.readthedocs.io/en/release-2.2/couchdb_tutorial.html#build-the-query-in-chaincode 因此,例如,如果您的资产具有字段“哈希”,您可以这样查询:

String queryHash;
QueryResultsIterator<KeyValue> results = stub.getQueryResult("{\"selector\":{\"hash\":\"" + queryHash + "\"}}");