Di Indy 10, hubungkan TIdHTTP ke proxy SOCKS melalui IOHandler-nya. Dengan asumsi formulir sudah memiliki komponen Http, SocketHandler, dan Socks:

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

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

Di sini SocketHandler adalah TIdIOHandlerStack dan Socks adalah TIdSocksInfo. Konfigurasikan komponen sebelum permintaan. Untuk contoh situs publik tanpa kredensial proxy ini, pilih kandidat SOCKS5 dari daftar proxy SOCKS5 dan biarkan rute proxy HTTP yang usang tetap bersih seperti dijelaskan di bawah. Memilih versi SOCKS penting karena nilai bawaannya adalah svNoSocks.

ProxyParams TIdHTTP mengonfigurasi proxy HTTP. Rute khusus SOCKS justru berada di TransparentProxy. Mempertahankan proxy HTTP di sana juga dapat menggambarkan perantara lain di luar koneksi SOCKS, jadi bersihkan konfigurasi proxy HTTP yang usang bila bukan bagian dari jalur yang dimaksud.

Untuk autentikasi nama pengguna/kata sandi SOCKS5, atur Socks.Authentication ke saUsernamePassword dan sediakan nama pengguna serta kata sandinya. IOHandler yang mendukung SSL harus mempertahankan peran TLS-nya; lampirkan SOCKS ke antarmuka proxy warisannya alih-alih menggantinya dengan handler biasa.

Artikel terkait