gpt4 book ai didi

couchdb - 使用 curl 将文档放入 couchdb 时如何跳过修订检查?

转载 作者:行者123 更新时间:2023-12-02 02:01:51 24 4
gpt4 key购买 nike

我将一个文件放入 couchdb,如下所示:

curl -X PUT http://localhost:5984/bucket/keyname_1 \
-d '{"foo":"bar"}'

只要文档不存在,这就可以正常工作。如果确实存在,我需要包含一个“_rev”键来验证我正在更新现有文档:
curl -X PUT http://localhost:5984/bucket/keyname_1 \
-d '{"_rev":"2-207df9da","foo":"bar"}'

如果 _rev 键丢失,或者 _rev 键与现有记录中的内容不匹配,则会引发“冲突”错误。这就是您知道修订版不会被丢弃的方式。

但是如果我想无条件地写它,绕过这个检查呢?

我有一个设计,我使用支票更新主记录,然后我想保存一个简短的摘要记录,其中只有几个字段,可以轻松抓取和下载摘要屏幕。因为我刚刚更新了主记录,所以我知道我有最新的副本。我只想写一个,我不想为了获得 _rev 而先读一次。这将是多余的。

有什么方法可以修改我的请求以告诉 couchbase 跳过 _rev 检查并无条件地放入文档吗?

最佳答案

因此,您有两个要更新的文档:main 和 summary。即使您拥有最新版本的 main,这实际上是否意味着您也拥有最新版本的摘要,还是无论如何都想强制执行最后一个?如果,那么您可能会查看更新处理程序:http://wiki.apache.org/couchdb/Document_Update_Handlers

另外,如果您使用某种辅助 GET获取最新的 _rev ,使用更便宜的 HEAD要求。

编辑 : BTW,为什么有两个单独的文件?是Summary一个完整的 Main一?所有成员都在那里找到了?那么您可以使用 Show 或 list 函数吗? http://wiki.apache.org/couchdb/Formatting_with_Show_and_List

关于couchdb - 使用 curl 将文档放入 couchdb 时如何跳过修订检查?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16862082/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com