diff --git a/README.org b/README.org index 13a69ab5..86576fd2 100644 --- a/README.org +++ b/README.org @@ -1075,6 +1075,26 @@ missed, etc: #+END_SRC + +** Preferred Authentication +:PROPERTIES: +:CUSTOM_ID: h-c29486f9-8c54-11e9-acb1-90b11c96f2d2 +:END: + +To select the preferred authentication scheme: + +#+BEGIN_SRC clojure + +(client/get "http://example.com/protected" {:auth-schemes ["NTLM"]}) + +#+END_SRC + +#+BEGIN_SRC clojure + +(client/get "http://example.com/protected" {:proxy-auth-schemes ["BASIC" "DIGEST"]}) + +#+END_SRC + * Advanced Usage :PROPERTIES: :CUSTOM_ID: h-d52ca837-a575-402f-81fe-53241d85f2db diff --git a/src/clj_http/core.clj b/src/clj_http/core.clj index 1acc835d..2455807b 100644 --- a/src/clj_http/core.clj +++ b/src/clj_http/core.clj @@ -186,7 +186,9 @@ cookie-spec ; deprecated conn-request-timeout - conn-timeout] + conn-timeout + auth-schemes + proxy-auth-schemes] :as req}] (let [config (-> (RequestConfig/custom) (.setConnectTimeout (or connection-timeout conn-timeout -1)) @@ -198,7 +200,9 @@ (boolean (opt req :allow-circular-redirects))) (.setRelativeRedirectsAllowed ((complement false?) - (opt req :allow-relative-redirects))))] + (opt req :allow-relative-redirects))) + (.setTargetPreferredAuthSchemes auth-schemes) + (.setProxyPreferredAuthSchemes proxy-auth-schemes))] (if cookie-spec (.setCookieSpec config CUSTOM_COOKIE_POLICY) (.setCookieSpec config (get-cookie-policy req)))