PROBLEMACouchDB on-the-fly archivos adjuntos a través de línea de comandos
Quiero ser capaz de unir un/archivo adjunto (s) múltiple como se crea el documento, a través de la línea de comandos (ver más abajo) . Solo puedo hacer que esto funcione en Futon (Couchbase), pero solo después de que ya se haya creado un documento.
me han tratado los siguientes:
curl -X PUT 'http://username:[email protected]:5984/client_info'
curl -X POST 'http://username:[email protected]:5984/client_info' -H 'Content-Type: application/json' -d '{"client_type": "Private", "client_name": "John Doe","client_email": "[email protected]","client_city": "Toronto","created_at": "2011-09-06 12:45:03","expires_at": "2012-01-01 00:00:00", "_attachments": {
"test01.jpg": {
"content_type": "image/jpeg",
"length": 30189
}
}
}'
Esto sólo da como resultado el siguiente error:
{"error":"unknown_error","reason":"function_clause"}
Gracias
Así que primero necesito crear el documento, obtener un _rev y luego usar PUT para finalmente adjuntar una imagen? ¿Por qué no es posible hacer esto simultáneamente? ¿Qué sucede si la información que deseo ingresar proviene de un formulario de registro, donde el usuario tiene la capacidad de cargar una o más imágenes? ¿Cómo voy a hacer esto? – EdvardG
Si está buscando un almacenamiento altamente escalable para objetos binarios que escriben en un cubo al mismo tiempo, CouchDB puede no ser su primera opción. Todavía hay varias soluciones para su problema: almacene localmente copias de las imágenes cargadas y póngalas en cola para la carga secuencial. De forma alternativa, almacene cada imagen en un documento distinto (permite la carga en paralelo) y solo agregue los _ids de los documentos de imagen en su documento de usuario. Para hacer todo en una sola solicitud: Base64: codifique sus imágenes e inclúyalas en su documento JSON (feo en términos de rendimiento). –
Si se produce un error: "no dio ningún resultado: ..." poner la URL en las comillas: rizo -v -X PUT 'http://127.0.0.1:5984/albums/6e1295ed6c29495e54cc05947f18c8af/artwork.jpg? rev = 2-2739352689 '--data-binary @ artwork.jpg -H "Content-Type: image/jpg" – Andriy