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

+0

谢谢@mnunber 但如果我有我的每个新文档的自动增量ID。成功插入后,我还需要在最终响应中使用该ID。我如何获得该ID? –

+0

Couchbase没有自动增量ID的概念。如果你有一个自动增量的ID,它在你的应用程序的某个地方完成,你应该在你的应用程序代码中记录这个。您可以使用couchbase计数器创建自动递增ID,但在这种情况下,您每增加一个计数器,都会返回该值。 –

+0

谢谢你明白了。 –