5

ドキュメントのリビジョンを取得するために、couchDB の _revs_diff API をテストしてみました。これが私が使用したコマンドです

curl -X POST http://******:******@localhost:5984/grocery-sync/_revs_diff -H "Content-type:application/json" 

結果は

{"error":"unknown_error","reason":"badarg"}

その理由を知っている人はいますか?

4

1 に答える 1

4

CouchDB wiki ページによると_revs_diff、指定されたドキュメントのリビジョンが無効な場合、 は値を返します。使用例curlはありません。

問題を投稿しているこのメーリング リストを見ると、次のようにドキュメントとリビジョン情報を含める必要があるようです。

$ curl -X POST -H "Content-type:application/json" \
   http://*:*@localhost:5984/grocery-sync/_revs_diff \
   -d '{"0d63eac0ca9a37daa062b23853a4cf4d":["1-e9e4e9c76323a267ff4f780f9f979b9f", "12-3286453e55eb2c401bc194670075f942"]}'

ディクショナリ キー ( 0d63...cf4d) はドキュメント ID で、配列はリビジョン ID です。この例では、両方のリビジョン (1-...12-...) がデータベースに存在するため、応答は次のようになります。

{}

不足しているリビジョン ID (私が発明したもの) を提供した場合:

$ curl -X POST -H "Content-type:application/json"  \
  http://*:*@localhost:5984/grocery-sync/_revs_diff \
  -d '{"0d63eac0ca9a37daa062b23853a4cf4d":["1-abcdef"]}'

レスポンスは

{"0d63eac0ca9a37daa062b23853a4cf4d":{"missing":["1-abcdef"]}}
于 2012-11-01T14:35:10.083 に答える