U Indy 10 povežite TIdHTTP sa SOCKS proxyjem kroz njegov IOHandler. Pretpostavimo da formular već posjeduje komponente Http, SocketHandler i Socks:

Http.IOHandler := SocketHandler;
SocketHandler.TransparentProxy := Socks;
Socks.Host := 'proxy.example';
Socks.Port := 1080;
Socks.Version := svSocks5;

Page := Http.Get('http://example.com/');

Ovdje je SocketHandler TIdIOHandlerStack, a Socks TIdSocksInfo. Konfigurišite komponente prije zahtjeva. Za ovaj primjer javnog sajta bez podešenih proxy akreditiva, izaberite SOCKS5 kandidata sa liste SOCKS5 proxyja i držite svaku zastarjelu HTTP proxy rutu očišćenom kako je opisano ispod. Odabir verzije SOCKS-a je važan jer je zadana vrijednost svNoSocks.

ProxyParams TIdHTTP-a konfigurišu HTTP proxy. Ruta samo preko SOCKS-a pripada TransparentProxy. Zadržavanje i HTTP proxyja tamo može opisati drugog posrednika izvan SOCKS veze, zato očistite zastarjelu HTTP proxy konfiguraciju kada nije dio predviđene putanje.

Za SOCKS5 provjeru korisničkog imena/lozinke postavite Socks.Authentication na saUsernamePassword i dostavite korisničko ime i lozinku. IOHandler koji podržava SSL treba zadržati svoju TLS ulogu; prikvačite SOCKS na njegovo naslijeđeno proxy sučelje umjesto da ga zamijenite običnim handlerom.

Povezani članci