Python websocket-client: sambung melalui proksi SOCKS5
Konfigurasikan websocket-client dengan jenis proksi SOCKS yang didokumenkan dan biarkan pustaka mengendalikan lapisan TLS sambungan wss.
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.