Scegliere il livello di configurazione del proxy di clj-http
Usate le proprietà JVM per un percorso clj-http condiviso oppure le opzioni della richiesta per una sostituzione esplicita del proxy HTTP.
Per clj-http 3.13.1, iniziate dalle interfacce documentate della libreria: le proprietà Java e la mappa della richiesta. Una preferenza proxy del desktop da sola non mostra quali parametri abbia fornito l'applicazione.
Una richiesta può scegliere esplicitamente un intermediario HTTP:
(require '[clj-http.client :as http])
(http/get "https://example.com/"
{:proxy-host "proxy.example.net"
:proxy-port 8080})
Per una politica JVM condivisa, clj-http documenta http.proxyHost e http.proxyPort per le destinazioni HTTP, oltre a https.proxyHost e https.proxyPort per le destinazioni HTTPS. La proprietà di bypass condivisa è http.nonProxyHosts.
Le opzioni esplicite proxy-host e proxy-port sostituiscono quel percorso basato sulle proprietà, inclusa http.nonProxyHosts. Per una configurazione di test pubblica consentita senza credenziali proxy, una voce HTTP dal elenco dei proxy HTTP può fornire host e porta della richiesta. clj-http espone anche proxy-ignore-hosts per le esclusioni a livello di richiesta; il valore predefinito documentato contiene localhost e 127.0.0.1.
Quando l'intermediario richiede credenziali, passate proxy-user e proxy-pass nelle opzioni della richiesta dalla fonte di credenziali dell'applicazione.
SOCKS ha un'interfaccia separata: create un gestore con clj-http.conn-mgr/make-socks-proxied-conn-manager e passatelo come connection-manager. Riusate e chiudete quel gestore secondo il ciclo di vita del carico di lavoro.