U Indy 10 povežite TIdHTTP sa SOCKS proxyjem kroz njegov IOHandler. Uz pretpostavku da obrazac 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. Konfigurirajte komponente prije zahtjeva. Za ovaj primjer javnog web-mjesta bez postavljenih proxy vjerodajnica odaberite SOCKS5 kandidata s popisa SOCKS5 proxyja i držite svaku zastarjelu HTTP proxy rutu očišćenom kako je opisano u nastavku. Odabir verzije SOCKS-a važan je jer je zadana vrijednost svNoSocks.

ProxyParams u TIdHTTP-u konfiguriraju HTTP proxy. Ruta samo preko SOCKS-a pripada TransparentProxyju. Zadržavanje HTTP proxyja i tamo može opisati drugog posrednika izvan SOCKS veze, pa 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; pričvrstite SOCKS na njegovo naslijeđeno proxy sučelje umjesto da ga zamijenite običnim rukovateljem.

Povezani članci