curl – 由于更新冲突而无法删除文档

这是我获取文档并检查更新版本的方法
curl  http://localhost/cdb/characters/e6b153975174556adc0b344e9a000a7f?revs=true

returns:
{"_id":"e6b153975174556adc0b344e9a000a7f","_rev":"1-25b25539eca3944ef8d8f20748ed4902","name":"Barack Obama","position":"US President"}

然后我尝试删除这样的文档:

curl -X DELETE http://localhost/cdb/characters/e6b153975174556adc0b344e9a000a7f?rev=1-25b25539eca3944ef8d8f20748ed4902

response:
{"error":"conflict","reason":"Document update conflict."}

为什么,如果修改似乎没有问题,是否存在删除文档冲突?

删除没有其他修订的文档是否有问题?

解决方法

首先,由于您的代码看起来不正确,请检查您的params实际上是否正在发送.

否则,您应检查修订是否标记为已删除

curl -X GET http://127.0.0.1:5984/kina/  \
 04ce1239166b841ae8a317897ec45b11?revs_info=true
{
  "_id":"04ce1239166b841ae8a317897ec45b11","_rev":"3-bc27b6930ca514527d8954c7c43e6a09","_revs_info":
  [
   {
    "rev":"3-bc27b6930ca514527d8954c7c43e6a09","status":"available"
   },{
    "rev":"2-eec205a9d413992850a6e32678485900","status":"deleted"
   },{
    "rev":"1-967a00dff5e02add41819138abb3284d","status":"available"
   }
  ]
}

删除删除的版本,您必须使用_purge.例如:

curl -X POST http://127.0.0.1:5984/kina/_purge/ \
     -H "content-type:application/json" \
     -d ’{"7341477ce373f9cc76f351e598001cdd":
           ["2-5c7fb5dfeaf6f7cea149922fa1cdaf96"]
        }’

{
  "purge_seq":1,"purged":
  {
    "7341477ce373f9cc76f351e598001cdd":
    ["2-5c7fb5dfeaf6f7cea149922fa1cdaf96"]
  }
}

相关文章

文件查找(find) 1 find 简单的说,就是实时查找指定的内容或条件。特点:最新、最快、最准确。 用法:...
非交互式添加分区 方法一 添加/deb/sdb 下的分区,其实位置为1到1000M,第二个分区位置为1001至3000M,...
编译安装httpd 1 去官网下载源码包 为避免非法软件,一定要去官网下载http://www.apache.org httpd-2.4...
gdisk用法 gdisk - InteractiveGUIDpartitiontable (GPT) manipulator GPTfdisk (akagdisk) isatext-mo...
1 一定用快捷键 这里简单的说下几个常用的快捷按键。 1.1 移动光标快捷键 Crtl + a 光标回到命令行...
bash shell中测试命令 test命令提供了if-than语句中测试不同条件的途径。如果test命令中列出的条件成立...