Autobahn Twisted WSS a nascadh trí sheachfhreastalaí HTTP
Lig do connectWS críochphointe an tseachfhreastalaí agus TLS an chinn scríbe a chomhordú níos déanaí in ionad críochphointe díreach a oscailt taobh le monarcha atá feasach ar sheachfhreastalaí.
Déanann críochphointe Twisted an nasc TCP. Teastaíonn an críochphointe sin fós ó mhonarcha WebSocket atá cumraithe chun seachfhreastalaí a idirbheartú chun nascadh leis an idirghabhálaí.
Do fheidhmchlár Autobahn atá ann cheana a úsáideann a chúntóir caighdeánach:
from autobahn.twisted.websocket import WebSocketClientFactory, connectWS
from twisted.internet import ssl
factory = WebSocketClientFactory(
'wss://events.example/channel',
proxy={'host': 'proxy.example', 'port': 8080},
)
factory.protocol = ApplicationProtocol
connector = connectWS(
factory,
contextFactory=ssl.optionsForClientTLS('events.example'),
timeout=10,
)
Is é ApplicationProtocol an rang prótacail WebSocket atá ag an bhfeidhmchlár cheana. Coinnigh an t-imoibrí agus glanadh an naisc laistigh de shaolré an fheidhmchláir sin. I gcás seirbhíse WSS poiblí a cheadaítear trí idirghabhálaí poiblí, soláthraíonn an liosta seachfhreastalaithe HTTP iarrthóirí d'óstach agus do phort seachfhreastalaí na monarchan.
I gcás monarchan atá cumraithe le seachfhreastalaí, nasctar connectWS le TCP leis an seachfhreastalaí agus coinníonn sé comhthéacs TLS an chinn scríbe don nasc slán níos déanaí. Ní chuireann sé an gnáthnasc seachfhreastalaí HTTP i TLS an chinn scríbe ar dtús.
Caithfidh socrú saincheaptha HostnameEndpoint agus ClientService an roinnt chéanna a chaomhnú: nascadh leis an seachfhreastalaí ar dtús, ansin ligean don mhonarcha chumraithe an sprioc a idirbheartú agus an TLS riachtanach a bhunú. Measctar na róil sin nuair a nasctar an críochphointe go díreach le events.example agus a mhonarcha ag súil le comhrá seachfhreastalaí.
Fanann URL an WebSocket mar fhíorscríbe na seirbhíse. Soláthraíonn a hóstainm féiniúlacht TLS freisin; ní chumraíonn a ionadú le hóstainm an tseachfhreastalaí an tseirbhís shlán atá beartaithe.