libproxy vyberá trasu; spojenie nadväzuje váš klient
Používajte výsledky libproxy ako kandidátov smerovania pre jednotlivé URL namiesto toho, aby ste očakávali, že zisťovanie presmeruje sockety aplikácie.
Ak libproxy vráti proxy URI, ale ďalší socket sa pripojí priamo, skontrolujte odovzdanie. libproxy zisťuje politiku; nezachytáva každý socket, ktorý aplikácia otvorí.
- Opýtajte sa na zdroj. V dokumentovanom C API libproxy 0.5 vytvorte továreň proxy a požiadajte o skutočnú cieľovú URL.
- Vysvetlite zoradených kandidátov. Výsledky HTTP, SOCKS a priame vyžadujú odlišné spracovanie. Zachovajte ich poradie preferencie a zamýšľanú politiku zlyhania.
- Nakonfigurujte spotrebiteľa. Odovzdajte zvolený typ proxy, koncový bod a usporiadanie overovania transportu, ktorý ich podporuje. Holý TCP socket nezíska z vráteného URI vyjednávanie CONNECT ani SOCKS.
Neukladajte jednu odpoveď ako trasu pre všetky ciele a nerobte priame smerovanie trvalým len preto, že prvé proxy raz zlyhalo.
Ak klient HTTP už integruje systémovú proxy alebo zisťovanie PAC, zvoľte jedného vlastníka výberu. Dva nezávislé selektory a ďalší obal môžu vytvoriť trasu, ktorú žiadna z politík nezamýšľala.
V natívnom kóde dodržiavajte životný cyklus továrne a pamäte výsledkov nainštalovaného API. Opätovné použitie továrne môže zachovať užitočný stav zisťovania, ale stále potrebuje dotaz pre každý cieľ. Zaznamenávajte výber oddelene od výsledku spojenia: vrátené URI nepreukazuje úspešné overenie, preklad ani ďalší prístup.