עבור 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. השתמשו שוב באותו מנהל וסגרו אותו בהתאם למחזור החיים של עומס העבודה.

מאמרים קשורים