【发布时间】:2019-07-16 02:52:51
【问题描述】:
合同代码:
async function queryCar(ctx, query) {
let queryResult = await.ctx.stub.getQueryResult(query);
console.log(queryResult.toString());
return queryResult.toString();
}
我如何在我的 API 中调用函数:
var stringQuery = `{"selector": {"id": "17"}}`
newQuery = await contract.evaluateTransaction('richQuery',stringQuery);
console.log(JSON.parse(newQuery));
stringQuery 的值不是对CouchDB 的有效查询吗?
也许我使用了错误的函数,因为文档中提到了返回 StateQueryIterator 的函数。谁能帮助我了解如何在 javascript 中使用 getQueryResult 函数?谢谢!
【问题讨论】:
-
console.log(queryResult.toString())的结果是什么?猜猜queryResult可能是一个对象,而queryResult.toString()正在返回[object, Object]。只需尝试从queryCar返回queryResult并将其分配给newQuery而不使用JSON.parse -
返回 JSON.stringify(queryResult);应该做的伎俩。如果您需要使用对象,请使用 JSON.parse(objectString) 将字符串转换回 JSON
-
@adiga 收到交易错误:
Converting circular structure to JSON -
@Spangle 同样的错误,
Converting circular structure to JSON -
我使用的功能对吗?或者我对数据库的查询对吗?
标签: javascript node.js json object ecmascript-6