Jawaban lama menyarankan handler SOCKS tambahan karena menargetkan tumpukan jaringan .NET yang lebih lama. Tumpukan HTTP .NET modern yang didukung dapat menggunakan skema URI proksi SOCKS yang terdokumentasi.

var handler = new HttpClientHandler
{
    Proxy = new WebProxy("socks5://203.0.113.10:1080"),
    UseProxy = true
};
using var client = new HttpClient(handler);

Titik akhir hanya bersifat ilustratif. Daftar proksi SOCKS5 menyediakan kandidat publik untuk URI socks5 WebProxy ini; gunakan versi yang didukung oleh handler sebenarnya. Periksa kerangka target, runtime, platform, dan handler sebenarnya yang digunakan aplikasi sebelum menerapkan contoh ini ke proses .NET Framework yang lebih lama.

Dokumentasi proksi Microsoft saat ini mencantumkan socks4, socks4a, dan socks5. Nama-nama itu menjelaskan perilaku protokol. Nomor port saja tidak memilih versi SOCKS, dan ejaan socks5h pada curl bukanlah skema URI universal yang diterima setiap klien.

Untuk layanan SOCKS5 yang diautentikasi, konfigurasikan kredensial sesuai antarmuka yang didukung handler. SOCKS4 dan SOCKS4a tidak menyediakan mekanisme autentikasi kata sandi yang sama.

URL tujuan tetap tidak berubah. Permintaan HTTPS tetap membangun dan memverifikasi TLS tujuan melalui jalur proksi; menambahkan SOCKS bukan alasan untuk menonaktifkan verifikasi tersebut.

Artikel terkait