我在:clouchdb example code的一部分上出现错误(这是一个链接,但是包含的examples.lisp文件也无法正常工作)。

具体来说,当我输入

> (create-document '((:|name| . "wine") (:|tags| . ("beverage" "fun" "alcoholic"))))


我得到DOC-ERROR条件

Reason "Content-Type must be application/json", Document ID: "NIL"
   [Condition of type DOC-ERROR]

Restarts:
 0: [RETRY] Retry SLIME REPL evaluation request.
 1: [*ABORT] Return to SLIME's top level.
 2: [TERMINATE-THREAD] Terminate this thread (#<THREAD "repl-thread" RUNNING {10040D2E11}>)

Backtrace:
  0: (POST-DOCUMENT ((:|name| . "wine") (:|tags| "beverage" "fun" "alcoholic")))
  1: (SB-INT:SIMPLE-EVAL-IN-LEXENV (CREATE-DOCUMENT '((:|name| . "wine") (:|tags| "beverage" "fun" "alcoholic"))) #<NULL-LEXENV>)
 --more--


该示例的预期效果是让CouchDB为新文档分配一个ID(在链接页面和代码文件的注释中都清楚了这一点)。

我正在从Debian仓库中运行SBCL 1.0.40.0,clouchdb_0.0.11(直接来自quicklisp)和CouchDB 0.11,以防万一。我也在64位Debian机器上。

谁能指出我正确的方向?

最佳答案

CouchDB在POST'ing文档时需要“ Content-Type:application / json”,这是一个相当新的要求,因此我认为clouchdb根本还没有这样做。

较短的版本:听起来像clouchdb与CouchDB的最新版本不兼容。

10-08 05:36