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 kebergantungan SOCKS terdokumennya yang sudah tersedia. Untuk perkhidmatan WSS awam pada laluan proksi awam yang dibenarkan, senarai proksi SOCKS5 menyediakan calon untuk hos dan port proksi. Walaupun kunci hos/port dinamakan http_proxy_*, proxy_type='socks5h' memilih SOCKS5 dengan pengendalian nama sasaran di sebelah proksi.

Urutannya ialah rundingan proksi untuk mendapatkan aliran destinasi, TLS yang disahkan untuk WSS, kemudian jabat tangan WebSocket. Nama hos proksi bukan identiti TLS laman web. Melumpuhkan pengesahan tidak membaiki peringkat TLS yang tersalah letak.

Untuk proksi yang disahkan, gunakan argumen terdokumen versi yang dipasang untuk jenis proksi itu. Pengepala WebSocket aplikasi tidak mengesahkan perantara terdahulu.

Soket yang dibekalkan secara manual memindahkan tanggungjawab lapisan tersebut kepada integrasi. Utamakan antara muka pustaka apabila sesuai, dan asingkan websocket-client daripada pakej websockets yang berversi berasingan.

Artikel berkaitan