เลือกชั้นการกำหนดค่าพร็อกซีของ clj-http
ใช้คุณสมบัติ JVM สำหรับเส้นทาง clj-http ที่ใช้ร่วมกัน หรือตัวเลือกคำขอสำหรับการแทนที่พร็อกซี HTTP อย่างชัดเจน
สำหรับ clj-http 3.13.1 เริ่มจากอินเทอร์เฟซที่เอกสารไว้ของไลบรารี: คุณสมบัติ Java และแผนที่คำขอ การตั้งค่าพร็อกซีบนเดสก์ท็อปเพียงอย่างเดียวไม่แสดงว่าค่าใดที่แอปพลิเคชันส่งมา
คำขอสามารถเลือกตัวกลาง HTTP ได้อย่างชัดเจน:
(require '[clj-http.client :as http])
(http/get "https://example.com/"
{:proxy-host "proxy.example.net"
:proxy-port 8080})
สำหรับนโยบาย JVM ร่วม clj-http เอกสาร http.proxyHost และ http.proxyPort สำหรับปลายทาง HTTP พร้อมทั้ง https.proxyHost และ https.proxyPort สำหรับปลายทาง HTTPS คุณสมบัติข้ามร่วมคือ http.nonProxyHosts
ตัวเลือก proxy-host และ proxy-port ที่ชัดเจนจะแทนที่เส้นทางที่อิงคุณสมบัตินั้น รวมถึง http.nonProxyHosts สำหรับการกำหนดค่าทดสอบสาธารณะที่อนุญาตโดยไม่มีข้อมูลรับรองพร็อกซี รายการ HTTP จากรายการพร็อกซี HTTPสามารถให้โฮสต์และพอร์ตของคำขอได้ clj-http ยังเปิดเผย proxy-ignore-hosts สำหรับการยกเว้นระดับคำขอ ค่าเริ่มต้นที่เอกสารไว้มี localhost และ 127.0.0.1
เมื่อตัวกลางต้องใช้ข้อมูลรับรอง ให้ส่ง proxy-user และ proxy-pass ในตัวเลือกคำขอจากแหล่งข้อมูลรับรองของแอปพลิเคชัน
SOCKS มีอินเทอร์เฟซแยกต่างหาก: สร้างตัวจัดการด้วย clj-http.conn-mgr/make-socks-proxied-conn-manager และส่งเป็น connection-manager ใช้ซ้ำและปิดตัวจัดการนั้นตามวงจรชีวิตของภาระงาน