Usmerite SOCKS pot TIdHTTP skozi njegov IOHandler
Povežite nastavitve SOCKS z IOHandlerjem Indy 10, ki ga uporablja TIdHTTP, cilj HTTP pa pustite na zahtevi.
V Indy 10 povežite TIdHTTP s proxyjem SOCKS prek njegovega IOHandlerja. Ob predpostavki, da ima obrazec že komponente Http, SocketHandler in Socks:
Http.IOHandler := SocketHandler;
SocketHandler.TransparentProxy := Socks;
Socks.Host := 'proxy.example';
Socks.Port := 1080;
Socks.Version := svSocks5;
Page := Http.Get('http://example.com/');
Tukaj je SocketHandler TIdIOHandlerStack, Socks pa TIdSocksInfo. Komponente nastavite pred zahtevo. Za ta primer javnega spletnega mesta brez nastavljenih poverilnic proxyja izberite kandidata SOCKS5 s seznama proxyjev SOCKS5 in ohranite morebitno zastarelo pot proxyja HTTP prazno, kot je opisano spodaj. Izbira različice SOCKS je pomembna, ker je privzeta vrednost svNoSocks.
ProxyParams v TIdHTTP nastavijo proxy HTTP. Pot samo prek SOCKS spada namesto tega v TransparentProxy. Če tam pustite tudi proxy HTTP, lahko to opiše še enega posrednika za povezavo SOCKS, zato počistite zastarelo konfiguracijo proxyja HTTP, kadar ni del načrtovane poti.
Za preverjanje pristnosti SOCKS5 z uporabniškim imenom in geslom nastavite Socks.Authentication na saUsernamePassword ter navedite uporabniško ime in geslo. IOHandler s podporo SSL bi moral ohraniti svojo vlogo TLS; pripnite SOCKS na njegov podedovani vmesnik proxyja, namesto da ga nadomestite z običajnim upravljalnikom.