我使用芒果查询服务器查询数据,例如:{“ selector”:{“ number”:10},“ limit”:3,“ skip”:2}
但是参数:'limit'和'skip'不起作用。查询计数的结果不是3。我想执行分页操作。
var queryString = `{"selector":{"number":10},"limit":3,"skip":2}`
resultsIterator, err := stub.GetQueryResult(queryString)
if err != nil{
log.Error(model.ERRNMCC0006)
return nil, err, model.ERRNMCC0006
}
defer resultsIterator.Close()
var resArr []string
for resultsIterator.HasNext() {
queryResponse, err := resultsIterator.Next()
if err != nil{
log.Error(model.ERRNMCC0007)
return nil, err, model.ERRNMCC0007
}
var buffer bytes.Buffer
buffer.WriteString(string(queryResponse.Value))
resArr = append(resArr, buffer.String())
}
答案 0 :(得分:0)
CouchDB实现去除了查询中的“限制”和“跳过”值,并用对等方的queryLimit配置中设置的值替换了“限制”。跳过始终重置为0。
https://jira.hyperledger.org/browse/FAB-5369
对于(v1.3)中的分页,您可以使用类似
的功能
GetStateByRangeWithPagination()
GetStateByPartialCompositeKeyWithPagination()
GetQueryResultWithPagination()
您必须传递上一个查询结果中的pageSize和书签。
注意:此功能在V1.3以下版本不可用
https://jira.hyperledger.org/browse/FAB-2809
https://docs.google.com/document/d/1AzcVjVbuvZGRozfNe3ksIpK-cBMlhhbGOUZhg2bzPW8/edit