如何清除 CouchDB 文档

How to purge CouchDB documents

我需要完全删除 CouchDB 2.1 版中的几个文档,就像在 Purge 中一样。

我一直在 docs.couchdb.org 上阅读有关 /db/_purge 的内容,但我不清楚这个过程。有一句话“The format of the request must include the document ID and one or more revisions that must be purged”.

如何在 Postman 或浏览器中执行此操作?我真的把我的 doc _id 和 rev(s) 括在大括号中了吗?我正在为如何正确设置 _purge 请求的格式而苦恼。

请注意,文档清除仅在 CouchDB 2.0 之前的版本和 2.3 之后的版本中受支持。早期版本的集群 CouchDB(2.0.x 和 2.1.x)不支持清除,尽管这方面的记录很少!

documentation解释,并举例说明:

{
    "c6114c65e295552ab1019e2b046b10e": [
        "3-b06fcd1c1c9e0ec7c480ee8aa467bf3b",
        "3-0e871ef78849b0c206091f1a7af6ec41"
    ]
}

所以这意味着格式为:

{
    "<doc id>": [
        "<rev>",
        "<rev>"
    ]
}

这应该是您的 HTTP 请求的主体,内容类型为 application/json。如果不使用 JavaScript.

,您将无法在浏览器中执行此操作

卷曲后看起来像:

curl -X POST http://<server url>/<database>/_purge -H 'Content-Type: application/json' -d '{"<doc id>":["<rev1>","<rev2>"]}'

截至目前,我的理解是 _purge 在 2.0 和 2.1 中不起作用。

有关详细信息,请查看此 JIRA post.

我刚刚编写了这个工具来清除和压缩 CouchDB 中的数据库。 https://github.com/nisbus/couch_db_cleaner
我希望 README 中的文档清晰明了并且对您有所帮助。