如何使用couchnode设置CouchBase的到期日期

时间:2013-05-17 12:19:52

标签: node.js couchbase

我使用以下代码(couchnode客户端)从Node.js app将数据存储在CouchBase中:

    //Expiry information of couchbase doucumenets. fetched from config.json
    //Expiry is less than 30*24*60*60 (30 days)
    //The value is interpreted as the number of seconds from the point of storage or update.
    //Expiry is greater than 30*24*60*60
    //The value is interpreted as the number of seconds from the epoch (January 1st, 1970).
    //Expiry is 0
    //This disables expiry for the item. 
    CouchBaseDB.set(keytosave, 60, doctosave, function (err, meta) {
        if (err) { console.log(err); } else {console.log('saved');}
    });

不幸的是,上面的代码不起作用(它本身保存了60而不是对象doctosave)并且没有解释如何设置到期时间而不是Chapter 4. Java Method Summary - 4.4. Expiry Values

是否有任何人遇到同样的问题,并找到了相同的解决方案或解决方案或任何文档支持。如果解释那将是很好的帮助。

提前致谢。

1 个答案:

答案 0 :(得分:4)

设置功能如下:

function set(key, doc, meta, callback) { ... }

如果您想为存储密钥添加到期,只需创建meta = {}对象并为其添加字段到期时间:meta.expiry = 1000

以下是sources

的链接

所以要存储你需要的文档:

var meta = {"expiry":60};
CouchBaseDB.set(keytosave, doctosave, meta, function (err, meta) {
  if (err) { console.log(err); } else {console.log('saved');}
});

注意:如果通过CouchBaseDB.get()从沙发基地检索该密钥,则可以从该get函数中提取meta