Только что проверил источник. Роберт Ньюсон выше верен; clouchdb
по-прежнему устанавливает content-type
в "text / javascript", в то время как post
загружает и put
читает документы (последний, похоже, работает в любом случае, только сообщения об ошибках).
Если вы не хотите использовать chillax, как я предлагал выше, вы можете зайти в файл clouchdb.lisp и изменить определение post-document
так, чтобы оно установило :content-type
на «application / json».
После этого вы сможете create-document
без набора :id
, и CouchDB ответит, сгенерировав новый для вас.
Патч, основанный на quicklisp
коде для clouchdb
(не то чтобы это было достаточно сложно, чтобы нуждаться в нем):
--- clouchdb.lispOLD 2011-09-24 09:38:20.000000000 -0400
+++ clouchdb.lisp 2011-09-24 09:38:58.000000000 -0400
@@ -753,7 +753,7 @@
the :ID property."
(let ((res (ensure-db ()
(db-request (cat (url-encode (db-name *couchdb*)) "/")
- :content-type "text/javascript"
+ :content-type "application/json"
:external-format-out +utf-8+
:content-length nil
:method :post