Hm, ok. Noted. thanks.
On 16 July 2013 21:35, Yves S. Garret <[email protected]> wrote: > On Tue, Jul 16, 2013 at 4:32 PM, Robert Newson <[email protected]> wrote: > >> You really think that "Content-Type must be application/json" isn't >> telling you what you need to do (namely, set the content-type to >> application/json)? :) >> >> B. >> >> >> On 16 July 2013 21:25, Yves S. Garret <[email protected]> wrote: >> > On Tue, Jul 16, 2013 at 4:20 PM, Robert Newson <[email protected]> >> wrote: >> > >> >> You can upload a document and all its attachments in one PUT request >> >> if you use multipart/related, yes. Check the test suite for a working >> >> example. >> >> >> >> B. >> >> >> >> >> >> On 16 July 2013 21:19, Robert Newson <[email protected]> wrote: >> >> > I think the error message is very descriptive and tells you exactly >> what >> >> to do. >> >> > >> >> > B. >> >> > >> >> > >> >> > On 16 July 2013 20:38, Yves S. Garret <[email protected]> >> >> wrote: >> >> >> On Tue, Jul 16, 2013 at 3:22 PM, Yves S. Garret >> >> >> <[email protected]>wrote: >> >> >> >> >> >>> On Tue, Jul 16, 2013 at 1:34 PM, Yves S. Garret < >> >> >>> [email protected]> wrote: >> >> >>> >> >> >>>> On Tue, Jul 16, 2013 at 1:12 PM, Robert Newson <[email protected] >> >> >wrote: >> >> >>>> >> >> >>>>> You need to pass the current rev, which clearly doesn't match the >> one >> >> >>>>> you tried and got the 409 conflict telling you it was wrong for. >> >> >>>>> >> >> >>>>> On 16 July 2013 18:07, Yves S. Garret <[email protected] >> > >> >> >>>>> wrote: >> >> >>>>> > On Tue, Jul 16, 2013 at 11:39 AM, Yves S. Garret >> >> >>>>> > <[email protected]> wrote: >> >> >>>>> >> >> >> >>>>> >> On Tue, Jul 16, 2013 at 11:13 AM, Tim Tisdall < >> [email protected]> >> >> >>>>> wrote: >> >> >>>>> >>> >> >> >>>>> >>> Do you have a space before "--data-binary" when you run the >> >> command? >> >> >>>>> >>> >> >> >>>>> >>> >> >> >>>>> >>> On Tue, Jul 16, 2013 at 11:05 AM, Yves S. Garret >> >> >>>>> >>> <[email protected] >> >> >>>>> >>> > wrote: >> >> >>>>> >>> >> >> >>>>> >>> > I'm going through this book and I'm in this section: >> >> >>>>> >>> > http://guide.couchdb.org/editions/1/en/api.html#attachments >> >> >>>>> >>> > >> >> >>>>> >>> > I try this in the command line and this is the error that I >> >> get: >> >> >>>>> >>> > % curl -vX PUT >> >> >>>>> >>> > >> >> >>>>> >>> > >> >> >>>>> >>> > >> >> >>>>> >> >> >> http://127.0.0.1:5984/albums/6e1295ed6c29495e54cc05947f18c8af/artwork.jpg?rev=2-2739352689--data-binary >> >> >>>>> >>> > @artwork.jpg -H "Content-Type: image/jpg" >> >> >>>>> >>> > zsh: no matches found: >> >> >>>>> >>> > >> >> >>>>> >>> > >> >> >>>>> >>> > >> >> >>>>> >> >> >> http://127.0.0.1:5984/albums/6e1295ed6c29495e54cc05947f18c8af/artwork.jpg?rev=2-2739352689 >> >> >>>>> >>> > >> >> >>>>> >>> > Am I making a stupid copy/paste mistake that's not >> immediately >> >> >>>>> >>> > obvious? There is an artwork.jpg in the directory that I'm >> >> working >> >> >>>>> >>> > in. >> >> >>>>> >>> > >> >> >>>>> >> >> >> >>>>> >> >> >> >>>>> >> Yes. >> >> >>>>> > >> >> >>>>> > >> >> >>>>> > This is what's in the database at the moment (if it helps): >> >> >>>>> > >> >> >>>>> > { >> >> >>>>> > "_id": "6e1295ed6c29495e54cc05947f18c8af", >> >> >>>>> > "_rev": "1-4b39c2971c9ad54cb37e08fa02fec636", >> >> >>>>> > "title": "There is Nothing Left to Lose", >> >> >>>>> > "artist": "Foo Fighters" >> >> >>>>> > } >> >> >>>>> > >> >> >>>>> > >> >> >>>>> > And I've attached the file with the actual DB. >> >> >>>>> >> >> >>>> >> >> >>>> Gotcha. It worked. Thanks. >> >> >>>> >> >> >>> >> >> >>> One more question, would it be possible to include multiple binary >> >> >>> uploaded files? >> >> >>> >> >> >>> This is what I tried and the results that I got: >> >> >>> >> >> >>> % curl -vX PUT " >> >> >>> >> >> >> http://127.0.0.1:5984/albums/6e1295ed6c29495e54cc05947f18c8af/artwork.jpg?rev=2-5ba0d72de94d89056e1f91ec900f5680 >> >> " >> >> >>> --data-binary @artwork.jpg --data-binary @sample2.jpg -H >> "Content-Type: >> >> >>> image/jpg" >> >> >>> * About to connect() to 127.0.0.1 port 5984 (#0) >> >> >>> * Trying 127.0.0.1... >> >> >>> * Adding handle: conn: 0x7fe5c4007c00 >> >> >>> * Adding handle: send: 0 >> >> >>> * Adding handle: recv: 0 >> >> >>> * Curl_addHandleToPipeline: length: 1 >> >> >>> * - Conn 0 (0x7fe5c4007c00) send_pipe: 1, recv_pipe: 0 >> >> >>> * Connected to 127.0.0.1 (127.0.0.1) port 5984 (#0) >> >> >>> > PUT >> >> >>> >> >> >> /albums/6e1295ed6c29495e54cc05947f18c8af/artwork.jpg?rev=2-5ba0d72de94d89056e1f91ec900f5680 >> >> >>> HTTP/1.1 >> >> >>> > User-Agent: curl/7.31.0 >> >> >>> > Host: 127.0.0.1:5984 >> >> >>> > Accept: */* >> >> >>> > Content-Type: image/jpg >> >> >>> > Content-Length: 161673 >> >> >>> > Expect: 100-continue >> >> >>> > >> >> >>> < HTTP/1.1 100 Continue >> >> >>> < HTTP/1.1 409 Conflict >> >> >>> * Server CouchDB/1.3.1 (Erlang OTP/R16B01) is not blacklisted >> >> >>> < Server: CouchDB/1.3.1 (Erlang OTP/R16B01) >> >> >>> < Date: Tue, 16 Jul 2013 19:19:45 GMT >> >> >>> < Content-Type: text/plain; charset=utf-8 >> >> >>> < Content-Length: 58 >> >> >>> < Cache-Control: must-revalidate >> >> >>> * HTTP error before end of send, stop sending >> >> >>> < >> >> >>> {"error":"conflict","reason":"Document update conflict."} >> >> >>> * Closing connection 0 >> >> >>> >> >> >>> This is the current record: >> >> >>> >> >> >>> { >> >> >>> "_id": "6e1295ed6c29495e54cc05947f18c8af", >> >> >>> "_rev": "2-5ba0d72de94d89056e1f91ec900f5680", >> >> >>> "title": "There is Nothing Left to Lose", >> >> >>> "artist": "Foo Fighters", >> >> >>> "_attachments": { >> >> >>> "artwork.jpg": { >> >> >>> "content_type": "image/jpg", >> >> >>> "revpos": 2, >> >> >>> "digest": "md5-dqqlZ2iJ4Mw9C6SNf7r+Pw==", >> >> >>> "length": 15138, >> >> >>> "stub": true >> >> >>> } >> >> >>> } >> >> >>> } >> >> >>> >> >> >> >> >> >> This is off-topic, but when I tried to setup a replication DB, this >> is >> >> the >> >> >> error that I got: >> >> >> >> >> >> % curl -X PUT http://127.0.0.1:5984/albums-replica >> >> >> {"ok":true} >> >> >> % curl -vX POST http://127.0.0.1:5984/_replicate -d >> >> '{"source":"albums", >> >> >> "target":"albums-replica"}' >> >> >> * About to connect() to 127.0.0.1 port 5984 (#0) >> >> >> * Trying 127.0.0.1... >> >> >> * Adding handle: conn: 0x7fb592808c00 >> >> >> * Adding handle: send: 0 >> >> >> * Adding handle: recv: 0 >> >> >> * Curl_addHandleToPipeline: length: 1 >> >> >> * - Conn 0 (0x7fb592808c00) send_pipe: 1, recv_pipe: 0 >> >> >> * Connected to 127.0.0.1 (127.0.0.1) port 5984 (#0) >> >> >>> POST /_replicate HTTP/1.1 >> >> >>> User-Agent: curl/7.31.0 >> >> >>> Host: 127.0.0.1:5984 >> >> >>> Accept: */* >> >> >>> Content-Length: 46 >> >> >>> Content-Type: application/x-www-form-urlencoded >> >> >>> >> >> >> * upload completely sent off: 46 out of 46 bytes >> >> >> < HTTP/1.1 415 Unsupported Media Type >> >> >> * Server CouchDB/1.3.1 (Erlang OTP/R16B01) is not blacklisted >> >> >> < Server: CouchDB/1.3.1 (Erlang OTP/R16B01) >> >> >> < Date: Tue, 16 Jul 2013 19:23:34 GMT >> >> >> < Content-Type: text/plain; charset=utf-8 >> >> >> < Content-Length: 78 >> >> >> < Cache-Control: must-revalidate >> >> >> < >> >> >> {"error":"bad_content_type","reason":"Content-Type must be >> >> >> application/json"} >> >> >> >> >> >> Thoughts? >> >> >> >> >> >> But also, is there an index of general CouchDB errors that I can >> refer >> >> to >> >> >> and find >> >> >> out the general causes behind those errors? >> >> >> > >> > Gotcha, will investigate further. >> > > *shrug* I installed CouchDB last Saturday and started reading this book on > Sunday. Honestly, it just doesn't jump out enough at you. And yes, this is > my first time playing with CouchDB. > > It reminds me of the times that I was working with C++ for the very first > time and all the fun associated with the intricacies of that language :) .
