from websocket import create_connection

ws = create_connection(
    "wss://service.example.net/socket",
    http_proxy_host="127.0.0.1",
    http_proxy_port=1080,
    proxy_type="socks5h",
    timeout=15,
)

Gunakan ini dengan websocket-client dan dependensi SOCKS terdokumentasinya yang sudah tersedia. Untuk layanan WSS publik pada rute proxy publik yang diizinkan, daftar proxy SOCKS5 menyediakan kandidat untuk host dan port proxy. Meskipun kunci host/port bernama http_proxy_*, proxy_type='socks5h' memilih SOCKS5 dengan penanganan nama target di sisi proxy.

Urutannya adalah negosiasi proxy untuk memperoleh aliran tujuan, TLS terverifikasi untuk WSS, lalu handshake WebSocket. Nama host proxy bukan identitas TLS situs web. Menonaktifkan verifikasi tidak memperbaiki tahap TLS yang salah tempat.

Untuk proxy yang diautentikasi, gunakan argumen terdokumentasi versi terpasang untuk jenis proxy tersebut. Header WebSocket aplikasi tidak mengautentikasi perantara sebelumnya.

Socket yang disediakan secara manual memindahkan tanggung jawab atas lapisan tersebut ke integrasi. Utamakan antarmuka pustaka bila sesuai, dan pisahkan websocket-client dari paket websockets yang versinya terpisah.

Artikel terkait