couchbase同步检索获取API

时间:2017-03-06 11:48:04

标签: couchbase synchronous

我在处理couchbase的bucket.get()API时遇到了问题。我需要看看,如果某些DocID已经存储在couchbase服务器中,如果没有,那么我需要进行一些XML解析。

var policy_bucket = cluster.openBucket('ss_policy_db');
function someFun(){
    for (var i = 0; i < Policies.length; i++) {
        var Profile = Policies[i];
        var polID = Profile.get('id');
        var ret = retrievePolicyNew(polID)
        // do some action on the basis of ret.
    }
}   
function retrievePolicyNew(id) { 
    var result = policy_bucket.get(id.toString()); // TypeError: Second argument needs to be an object or callback.
    console.log(result);
    // return -1, on if we find the ID.
}

bucket.get()的问题在于,它是异步的(不知道如何进行同步调用),我不想处理每次ID搜索的回调。是他们以任何其他方式搜索couchbase中的ID列表。如果有人可以帮助我获得同步调用API集,这将是很好的,这也将解决我的许多其他问题。因为在回调中进行非常小的搜索并处理它看起来不是很好。 我在数据库中存储的数据非常少,因此这里的性能不是问题。

1 个答案:

答案 0 :(得分:0)

您应该能够以同步方式使用它。我认为您上面提供的代码示例不完整,而且您正在调用CouchbaseBucket.async()或其他地方。在任何情况下,the docs are pretty clear that get()都会接受一个字符串并返回JsonDocument