Ako libproxy vrati proxy URI dok se sledeći socket povezuje direktno, proverite primopredaju. libproxy otkriva politiku; ne presreće svaki socket koji aplikacija otvori.

  1. Pitajte za resurs. U dokumentovanom libproxy 0.5 C API-ju napravite proxy fabriku i zatražite stvarni URL odredišta.
  2. Protumačite poređane kandidate. HTTP, SOCKS i direktni rezultati zahtevaju različito rukovanje. Zadržite njihov redosled preferencije i predviđenu politiku neuspeha.
  3. Konfigurišite potrošača. Dajte izabrani tip proxyja, krajnju tačku i raspored autentifikacije transportu koji ih podržava. Sirovi TCP socket ne dobija CONNECT ni SOCKS pregovaranje iz vraćenog URI-ja.

Ne čuvajte jedan odgovor kao rutu za sva odredišta i ne činite direktno rutiranje trajnim zato što je prvi proxy jednom zakazao.

Ako HTTP klijent već integriše sistemski proxy ili PAC otkrivanje, izaberite jednog vlasnika selekcije. Dva nezavisna selektora plus još jedan omotač mogu proizvesti rutu koju nijedna politika nije nameravala.

U izvornom kodu pratite životni ciklus fabrike i memorije rezultata instaliranog API-ja. Ponovno korišćenje fabrike može zadržati korisno stanje otkrivanja, ali još uvek zahteva upit za svako odredište. Beležite selekciju odvojeno od ishoda veze: vraćeni URI ne dokazuje uspešnu autentifikaciju, razrešavanje ili dalji pristup.

Povezani članci