Wie kann ich zu einem Proxy-Server von CLJ-Apache-http authentifizieren?
-
23-09-2019 - |
Frage
Ich versuche, einen Lauf aufstehen mit 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)
Das Problem ist, mein Proxy (Tintenfisch) erfordert Authentifizierung. Wie kann ich „feed“ mein Benutzername / Passwort in diese Bibliothek?
Danke!
Keine korrekte Lösung
Andere Tipps
Wenn Sie folgende meinen Header Wörterbuch den Trick:
"Proxy-Authorization" (str "Basic "
(base64/encode-str "username:password"))
Wie Mac sagte - dies auch mit einem Filter implementiert werden könnte -. Aber preemptive-basic-auth-Filter wird nicht funktionieren, weil es die Header für WWW-Autorisierung sendet anstelle von Proxy-Authorization
CLJ-Apache-http hat einen Präventiv-basic-auth-Filter, die Sie verwenden können. Es unterstützt kombinierte Benutzername / Passwort-Strings dieser Form „name: password“. Die Nutzung der Funktion ist nicht gut dokumentiert, aber kann hier . Beispiel (nicht getestet):
(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")))