Couchnode Upsert响应
问题描述:
我是couchbase和couchnode的新手。考虑到coucher Documentation, upsert回调函数只返回err和CAS。我想要更新或插入对象作为回应。我怎样才能做到这一点?Couchnode Upsert响应
以下是upsert函数的文档详细信息。
UPSERT(元组,[选项,]回调)→铲斗
- 元组:元组
-
选项(连键和相应值对象):对象
CAS :要检查的CAS值。如果服务器上的密钥包含不同CAS值,则操作将失败。请注意,如果这个
选项未定义,则不会执行比较。有关为每个密钥传递CAS令牌的 的详细信息,请检查每个密钥选项。届满(默认0):密钥的过期时间。如果它等于 零,则该项目永不过期。您也可以使用Unix时间戳或 从当前时间开始秒数,但在后者的情况下秒数不得超过2592000(30天).persist_to
- (默认为0):确保此操作是坚持到这许多节点。
- replicate_to(默认0):确保将此操作复制到此许多节点。
- 回调(ERR,CAS)
- CAS号:连键和相应的CAS令牌对象。
答
如果upsert
操作成功,upserted对象是你传递给upsert
摆在首位的值完全相同。没有必要复制这些信息。
如果您的callback
位于封闭内部,则始终可以引用您传递给upsert的object
。
谢谢@mnunber 但如果我有我的每个新文档的自动增量ID。成功插入后,我还需要在最终响应中使用该ID。我如何获得该ID? –
Couchbase没有自动增量ID的概念。如果你有一个自动增量的ID,它在你的应用程序的某个地方完成,你应该在你的应用程序代码中记录这个。您可以使用couchbase计数器创建自动递增ID,但在这种情况下,您每增加一个计数器,都会返回该值。 –
谢谢你明白了。 –