9
votes

COUCHDB Pièces jointes à la mouche via la ligne de commande

problème strong>

Je veux être capable de joindre une (s) pièce (s) (s) (s) de pièce (s) à la fois que le document est créé, via la ligne de commande (voir ci-dessous). Je ne peux que faire travailler cela pour travailler dans Futon (Couchbase), mais seulement une fois qu'un document a déjà été créé. P>

J'ai essayé ce qui suit: p>

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


0 commentaires

3 Réponses :


16
votes

Vous devez télécharger votre pièce jointe dans une étape séparée, contenant le fichier de pièce jointe réel dans le corps de la demande. Donc, créez d'abord votre document régulier, puis émettez une autre demande dans laquelle vous téléchargez le fichier. Voici un exemple sur la façon de télécharger une pièce jointe à l'aide de CURL (http://guide.couchdb.org/draft/api.html#attachlements): curl -v -x mettre http://127.0.0.1:5984/albums/6e1295ed6c29495e54cc05947f18c8af/artwork.jpg?rev=2-2739352689 - Data-Binary @ Artwork.jpg -h "Type de contenu: Image / JPG"

Et voici l'API officielle des pièces jointes: http://wiki.apache.org/couchdb/http_document_api#tandalone_attacchments < / a>



2
votes

Voici un moyen de télécharger une pièce jointe dans la même demande que la création du document.

curl -X POST 'http://user:pass@localhost:5984/client_stuff' -H 'Content-Type: application/json' -d '{"stuff": "stuff", "_attachments": {
   "empty.gif": {
       "content_type": "image/gif",
       "data": "'$(openssl base64 < file.gif)'"
    }
  }
}'


0 commentaires

6
votes

Cela fonctionne pour moi et semble un peu plus simple. Le premier doit être lors de la création du doc, si vous n'ajoutez pas de REV. Mes exemples utilisent la base de données "Test1".

$ curl -H "Content-Type: image/jpeg" -X PUT --data-binary @test01.jpg 'http://username:password@localhost:5984/test1/client_info/test01.jpg'

{"ok":true,"id":"client_info","rev":"1-8584b6af9d0c3347ba08202697f09952"}

$ curl -H "Content-Type: image/jpeg" -X PUT --data-binary @test02.jpg 'http://username:password@localhost:5984/test1/client_info/test02.jpg?rev=1-8584b6af9d0c3347ba08202697f09952'

{"ok":true,"id":"client_info","rev":"2-623b94aba30944d6744f5c11cf03fc10"}


0 commentaires