incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yves S. Garret" <yoursurrogate...@gmail.com>
Subject Re: Can't upload a pic to CouchDB.
Date Tue, 16 Jul 2013 20:35:04 GMT
On Tue, Jul 16, 2013 at 4:32 PM, Robert Newson <rnewson@apache.org> 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 <yoursurrogategod@gmail.com> wrote:
> > On Tue, Jul 16, 2013 at 4:20 PM, Robert Newson <rnewson@apache.org>
> 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 <rnewson@apache.org> 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 <yoursurrogategod@gmail.com>
> >> wrote:
> >> >> On Tue, Jul 16, 2013 at 3:22 PM, Yves S. Garret
> >> >> <yoursurrogategod@gmail.com>wrote:
> >> >>
> >> >>> On Tue, Jul 16, 2013 at 1:34 PM, Yves S. Garret <
> >> >>> yoursurrogategod@gmail.com> wrote:
> >> >>>
> >> >>>> On Tue, Jul 16, 2013 at 1:12 PM, Robert Newson <rnewson@apache.org
> >> >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 <yoursurrogategod@gmail.com
> >
> >> >>>>> wrote:
> >> >>>>> > On Tue, Jul 16, 2013 at 11:39 AM, Yves S. Garret
> >> >>>>> > <yoursurrogategod@gmail.com> wrote:
> >> >>>>> >>
> >> >>>>> >> On Tue, Jul 16, 2013 at 11:13 AM, Tim Tisdall
<
> tisdall@gmail.com>
> >> >>>>> 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
> >> >>>>> >>> <yoursurrogategod@gmail.com
> >> >>>>> >>> > 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 :) .

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message