בחירת רמת תצורת ה-proxy ב-clj-http
השתמשו במאפייני JVM למסלול clj-http משותף או באפשרויות הבקשה לעקיפת proxy HTTP מפורשת.
עבור clj-http 3.13.1, התחילו בממשקים המתועדים של הספרייה: מאפייני Java ומפת הבקשה. העדפת proxy בשולחן העבודה לבדה אינה מראה אילו הגדרות סיפקה האפליקציה.
בקשה יכולה לבחור מתווך 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. עבור תצורת בדיקה ציבורית מותרת ללא פרטי התחברות ל-proxy, רשומת HTTP מרשימת ה-proxy של 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. השתמשו שוב באותו מנהל וסגרו אותו בהתאם למחזור החיים של עומס העבודה.