> Very likely it's the automatic retry logic:

Thank you for that. One mystery solved. I wonder why it retries? The
ping reaches Omniture, I get back a 401 error. Maybe it retries on any
4xx error?




On Feb 23, 6:30 pm, Jonah Benton <jo...@jonah.com> wrote:
> Very likely it's the automatic retry logic:
>
> ;; Apache's http client automatically retries on IOExceptions, if
> you;; would like to handle these retries yourself, you can specify a;;
> :retry-handler. Return true to retry, false to stop
> trying:(client/post "http://example.org"; {:multipart [["title" "Foo"]
>                                                ["Content/type" "text/plain"]
>                                                ["file"
> (clojure.java.io/file "/tmp/missing-file")]]
>                                    :retry-handler (fn [ex try-count
> http-context]
>                                                     (println "Got:" ex)
>                                                     (if (> try-count
> 4) false true))})
>
> from
>
> https://github.com/dakrone/clj-http
>
> On Sat, Feb 23, 2013 at 5:57 PM, larry google groups <
>
>
>
>
>
>
>
> lawrencecloj...@gmail.com> wrote:
>
> > Any idea why a single call to clj-http/post causes 4 transactions to
> > appear in Charles?
>
> > On Feb 23, 5:47 pm, larry google groups <lawrencecloj...@gmail.com>
> > wrote:
> > > > Try adding
>
> > > > :insecure? true
>
> > > > to the map. Charles dynamically generates a cert pretending to be the
> > > > target host when acting as an ssl proxy, and clj-http probably has to
> > be
> > > > told to accept it.
>
> > > Okay, I've done so, but I don't think I understand what you are
> > > telling me. Are you saying that clj-http won't send its POST if it
> > > feels the cert is false?
>
> > > Charles has consistently said, in each report, "SSL Proxying not
> > > enabled for this host: enable in Proxy Settings, SSL locations"
>
> > > And I've made the change you suggested, but I still see that message.
>
> > > On Feb 23, 5:24 pm, Jonah Benton <jo...@jonah.com> wrote:
>
> > > > Try adding
>
> > > > :insecure? true
>
> > > > to the map. Charles dynamically generates a cert pretending to be the
> > > > target host when acting as an ssl proxy, and clj-http probably has to
> > be
> > > > told to accept it.
>
> > > > On Sat, Feb 23, 2013 at 4:18 PM, larry google groups <
>
> > > > lawrencecloj...@gmail.com> wrote:
>
> > > > > This might be a dumb "How does the Internet work" kind of question.
>
> > > > > I have been asked to pull data from Omniture, using the Omniture API.
> > > > > I thought this would take me an hour, but I've been working on this
> > > > > for 3 days now. I keep getting authentication errors.
>
> > > > > I became curious about exactly what code was sending to Omniture, so
> > I
> > > > > downloaded Charles, the network debugging tool:
>
> > > > >http://www.charlesproxy.com/
>
> > > > > I am using clj-http to make the POST. The post is suppose to be
> > > > > https.
>
> > > > > This is the thing that surprises me: If I use http then I can see all
> > > > > the headers in Charles, and they all look correct. But if I use https
> > > > > (which is what I need to use) then there are no headers that I can
> > see
> > > > > in Charles.
>
> > > > > Is that because Charles does not want to show me a bunch of encrypted
> > > > > garbage? Or is clj-http not adding in the headers with https? Maybe I
> > > > > need a special setting to get clj-http to correctly send to https? (I
> > > > > have not been able to find any such setting.)
>
> > > > > This is the code where I use clj-http (here I call http-client):
>
> > > > > (defn omniture-call-api [url-with-queue-method api-payload headers]
> > > > >   (timbre/spy :debug " return value of omniture-call-api "
> > > > >               (try+
> > > > >                 (http-client/post url-with-queue-method
> > > > >                                   {:body api-payload
> > > > >                                    :headers {"X-Api-Version" "2"
> > > > >                                              "X-WSSE" headers}
> > > > >                                    :content-type :json
> > > > >                                    :socket-timeout 4000
> > > > >                                    :conn-timeout 4000
> > > > >                                    :accept :json
> > > > >                                    :client-params
> > > > > {"http.protocol.allow-circular-redirects" false
> > > > >                                                    "http.useragent"
> > > > > "clj-http"}})
> > > > >                 (catch Object o (println (pp/pprint o))))))
>
> > > > > The url is:
>
> > > > >https://api2.omniture.com/admin/1.3/rest/?method=Report.QueueRanked
>
> > > > > At first I assumed this was a problem with Omniture's code. I have
> > > > > asked several question on the Developer forum at Omniture, but no one
> > > > > there could help me (Adobe has apparently cut most of the developer
> > > > > support since Adobe bought Omniture in 2009). However, I am now
> > > > > wondering if maybe I am doing this POST incorrectly.
>
> > > > > I am puzzled by something else as well: I call this function once,
> > yet
> > > > > Charles shows 4 calls being made to Omniture, and my own code, when
> > it
> > > > > prints data to the terminal, seems to show many requests being made.
> > > > > Why would that be?
>
> > > > > Again, if I change the URL so it uses "http" then in Charles I can
> > see
> > > > > all the headers that suppose to be in this line of code:
>
> > > > > "X-WSSE" headers
>
> > > > > and the headers look correct (I posted them to the developer forums
> > at
> > > > > Omniture and the one guy from Omniture who gave it a look felt there
> > > > > was nothing terribly amiss -- but he couldn't rule anything out.)
>
> > > > > But If I change the URL to use https, then I see no headers in
> > > > > Charles. Why is that?
>
> > > > > ---- lawrence
>
> > > > > --
> > > > > --
> > > > > You received this message because you are subscribed to the Google
> > > > > Groups "Clojure" group.
> > > > > To post to this group, send email to clojure@googlegroups.com
> > > > > Note that posts from new members are moderated - please be patient
> > with
> > > > > your first post.
> > > > > To unsubscribe from this group, send email to
> > > > > clojure+unsubscr...@googlegroups.com
> > > > > For more options, visit this group at
> > > > >http://groups.google.com/group/clojure?hl=en
> > > > > ---
> > > > > You received this message because you are subscribed to the Google
> > Groups
> > > > > "Clojure" group.
> > > > > To unsubscribe from this group and stop receiving emails from it,
> > send an
> > > > > email to clojure+unsubscr...@googlegroups.com.
> > > > > For more options, visithttps://groups.google.com/groups/opt_out.
>
> > --
> > --
> > You received this message because you are subscribed to the Google
> > Groups "Clojure" group.
> > To post to this group, send email to clojure@googlegroups.com
> > Note that posts from new members are moderated - please be patient with
> > your first post.
> > To unsubscribe from this group, send email to
> > clojure+unsubscr...@googlegroups.com
> > For more options, visit this group at
> >http://groups.google.com/group/clojure?hl=en
> > ---
> > You received this message because you are subscribed to the Google Groups
> > "Clojure" group.
> > To unsubscribe from this group and stop receiving emails from it, send an
> > email to clojure+unsubscr...@googlegroups.com.
> > For more options, visithttps://groups.google.com/groups/opt_out.

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to