Encamineu la ruta SOCKS de TIdHTTP pel seu IOHandler
Adjunteu la configuració SOCKS a l'IOHandler d'Indy 10 que fa servir TIdHTTP, tot deixant l'objectiu HTTP a la petició.
A Indy 10, connecteu TIdHTTP a un proxy SOCKS mitjançant el seu IOHandler. Suposant que el formulari ja té els components 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/');
Aquí SocketHandler és un TIdIOHandlerStack i Socks és un TIdSocksInfo. Configureu els components abans de la petició. Per a aquest exemple de lloc públic sense credencials de proxy configurades, trieu un candidat SOCKS5 de la llista de proxys SOCKS5 i manteniu neta qualsevol ruta de proxy HTTP obsoleta tal com es descriu a continuació. Triar la versió de SOCKS és important perquè el valor per defecte és svNoSocks.
Els ProxyParams de TIdHTTP configuren un proxy HTTP. Una ruta només SOCKS pertany a TransparentProxy. Mantenir-hi també un proxy HTTP pot descriure un altre intermediari més enllà de la connexió SOCKS, així que netegeu una configuració de proxy HTTP obsoleta quan no formi part del camí previst.
Per a l'autenticació per nom d'usuari/contrasenya de SOCKS5, establiu Socks.Authentication a saUsernamePassword i proporcioneu-ne el nom d'usuari i la contrasenya. Un IOHandler amb capacitat SSL ha de conservar el seu paper TLS; adjunteu-hi SOCKS a la seva interfície de proxy heretada en lloc de substituir-lo per un gestor simple.