Untuk clj-http 3.13.1, mulailah dari antarmuka terdokumentasi pustaka: properti Java dan peta permintaan. Preferensi proxy di desktop saja tidak menunjukkan setelan mana yang diberikan aplikasi.

Permintaan dapat memilih perantara HTTP secara eksplisit:

(require '[clj-http.client :as http])

(http/get "https://example.com/"
          {:proxy-host "proxy.example.net"
           :proxy-port 8080})

Untuk kebijakan JVM bersama, clj-http mendokumentasikan http.proxyHost dan http.proxyPort untuk tujuan HTTP, serta https.proxyHost dan https.proxyPort untuk tujuan HTTPS. Properti pelewatian bersama adalah http.nonProxyHosts.

Opsi proxy-host dan proxy-port yang eksplisit menimpa rute berbasis properti itu, termasuk http.nonProxyHosts. Untuk konfigurasi uji publik yang diizinkan tanpa kredensial proxy, entri HTTP dari daftar proxy HTTP dapat menyediakan host dan port permintaan. clj-http juga mengekspos proxy-ignore-hosts untuk pengecualian tingkat permintaan; nilai bawaan terdokumentasinya memuat localhost dan 127.0.0.1.

Ketika perantara memerlukan kredensial, berikan proxy-user dan proxy-pass dalam opsi permintaan dari sumber kredensial aplikasi.

SOCKS memiliki antarmuka terpisah: buat manajer dengan clj-http.conn-mgr/make-socks-proxied-conn-manager dan berikan sebagai connection-manager. Gunakan ulang dan tutup manajer itu sesuai siklus hidup beban kerja.

Artikel terkait