Pregunta

Estoy tratando de levantarse de una ejecución usando http://github.com/rnewman / CLJ-apache-http

(http/get (java.net.URI. url)
        :headers {"User-Agent" user-agent}
        :parameters (http/map->params
                 {:default-proxy (http/http-host :host "localhost"
                                 :port 8888)})
        :as :string)

El problema es que mi representante (calamar) requiere autenticación. Cómo hacer yo "alimentación" mi nombre de usuario / contraseña en esta biblioteca?

Gracias!

No hay solución correcta

Otros consejos

Agregar lo siguiente en mis cabeceras diccionario resolvieron el problema:

"Proxy-Authorization" (str "Basic "
                             (base64/encode-str "username:password"))

Al igual que Mac dijo - esto también podría ser implementado con un filtro -. Sino preventivo-basic-auth-filtro no funcionará, ya que envía los encabezados de WWW-autorización en lugar de Autorización proxy

CLJ-Apache-http tiene un-basic-auth-filtro preventivo que puede utilizar. Es compatible con las cadenas de nombre de usuario / contraseña combinados de esta forma "nombre: contraseña". El uso de la función no está bien documentada, pero se puede encontrar aquí . Ejemplo (no probado):

(http/get (java.net.URI. url)
    :headers {"User-Agent" user-agent}
    :parameters (http/map->params
             {:default-proxy (http/http-host :host "localhost"
                             :port 8888)})
    :as :string
    :filters ((preemptive-basic-auth-filter "name:password")))
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top