2017-08-17 89 views
1

我需要完全刪除(如清除)couchDB verson 2.1中的幾個文檔。如何清除couchDB文檔

我一直在閱讀有關docs.couchdb.org上的/ db/_purge,但這個過程並不清楚。有句子「請求的格式必須包含文檔ID和一個或多個必須清除的修訂版」。

我該如何在郵差或瀏覽器中做到這一點?我是否實際上將我的doc文檔包含在大括號中?我正在努力如何正確格式化_purge請求。

回答

0

documentation解釋,並提供了一個示例:

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

因此,在格式表示:

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

這應該是你的HTTP請求的主體,與內容類型應用程序/ json。如果不使用JavaScript,您將無法在瀏覽器中執行此操作。

,捲曲它會是什麼樣子:

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

剛纔我想: 捲曲-X POST HTTP:// //_purge -H '內容類型:應用程序/ JSON' -u用戶名:密碼 - d「{ 「3a0373f03593478d7919b41a0b007c55」: 「2-eec205a9d413992850a6e32678485900」]} 沙發返回: { 「錯誤」: 「method_not_allowed」, 「理由」: 「只拿到,HEAD允許」 } 知道爲什麼我收到這個錯誤? – CarCrazyBen

+1

清除操作對集羣couchdb(版本2.0和2.1)不起作用,因爲當您將文檔清除一個節點時,節點之間的內部複製將從其他節點恢復此文檔。目前已經有工作要實施真正的集羣清除,應該可以在幾個月內在couchdb中使用。 –

2

截至目前,這是我的理解是_purge不會在2.0和2.1工作。

欲瞭解更多信息,看看這個JIRA post.