Python websocket-client: iwwer eng SOCKS5-Proxy verbannen
Konfiguréier websocket-client mat engem dokumentéierten SOCKS-Proxy-Typ a lass d'Bibliothéik d'TLS-Schicht vun enger wss-Verbindung geréieren.
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,
)
Benotz dëst mam websocket-client an senger dokumentéierter SOCKS-Ofhängegkeet, déi schonn disponibel ass. Fir ëffentlech WSS-Servicer op engem erlaabten ëffentleche Proxy-Wee liwwert d'SOCKS5-Proxy-Lëscht Kandidaten fir den Host an de Port vun der Proxy. Obwuel d'Host/Port-Schlësselen http_proxy_* heeschen, wielt proxy_type='socks5h' SOCKS5 mat Zilnumm-Behandlung op der Proxy-Säit.
D'Reiefolleg ass Proxy-Verhandlung fir en Zil-Stream ze kréien, verifizéierten TLS fir WSS, duerno de WebSocket-Handshake. Den Hostnumm vun der Proxy ass net d'TLS-Identitéit vun der Websäit. D'Verifizéierung ausschalten reparéiert net eng falsch plazéiert TLS-Etapp.
Fir eng authentifizéiert Proxy benotz déi dokumentéiert Argument vun der installéierter Versioun fir dee Proxy-Typ. WebSocket-Header vun der Applikatioun authentifizéieren den éischte Vermëttler net.
En handmanuell geliwwerte Socket iwwerdréit d'Verantwortung fir déi Schichten un d'Integratioun. Bevorzug d'Bibliothéiksinterface wann et passt, a hal websocket-client getrennt vum separat versionéierte websockets-Paket.