Dacă libproxy returnează un URI de proxy în timp ce următorul socket se conectează direct, verifică predarea. libproxy descoperă politica; nu interceptează fiecare socket pe care îl deschide aplicația.

  1. Interoghează resursa. În API-ul C documentat libproxy 0.5, creează o fabrică de proxy și cere URL-ul real al destinației.
  2. Interpretează candidații ordonați. Rezultatele HTTP, SOCKS și directe necesită tratamente diferite. Păstrează ordinea de preferință și politica de eșec prevăzută.
  3. Configurează consumatorul. Dă tipul de proxy ales, punctul final și aranjamentul de autentificare unui transport care le acceptă. Un socket TCP brut nu obține negocierea CONNECT sau SOCKS dintr-un URI returnat.

Nu salva un singur răspuns ca rută pentru toate destinațiile și nu face rutarea directă permanentă doar pentru că primul proxy a eșuat o dată.

Dacă clientul HTTP integrează deja proxy-ul de sistem sau descoperirea PAC, alege un singur proprietar al selecției. Doi selectori independenți plus încă un înveliș pot produce o rută pe care niciuna dintre politici nu o intenționa.

În cod nativ, respectă ciclul de viață al fabricii și al memoriei rezultatelor din API-ul instalat. Reutilizarea unei fabrici poate păstra o stare de descoperire utilă, dar tot are nevoie de o interogare pentru fiecare destinație. Înregistrează selecția separat de rezultatul conexiunii: un URI returnat nu dovedește autentificare, rezolvare sau acces ulterior reușite.

Articole similare