Konfiguratu ClientWebSocket-en aukerak ConnectAsync deitu aurretik. Lehenengo konexioa hastea eta gero proxya esleitzea beranduegi da handshake horretarako.

using var socket = new ClientWebSocket();
socket.Options.Proxy = new WebProxy("http://203.0.113.10:8080")
{
    Credentials = new NetworkCredential(proxyUser, proxyPassword)
};
using var deadline = new CancellationTokenSource(TimeSpan.FromSeconds(20));
await socket.ConnectAsync(new Uri("wss://example.com/socket"),
                          deadline.Token);

Helbideak eta kontu-aldagaiak adibide dira. Beharrezko izen-espazioek System.Net, System.Net.WebSockets eta System.Threading barne hartzen dituzte. Erabili zure inplementazioan runtimeak, plataformak eta proxy zerbitzuak onartzen duten kredentzial mota eta autentifikazio mekanismoa.

WebProxy-ren kredentzialak proxyarenak dira. ClientWebSocketOptions-ek Credentials propietate bereizi bat ere badu WebSocket zerbitzariaren autentifikaziorako. Bata esleitzeak ez du automatikoki bestea betetzen.

WebSocket konexio seguru batean, baztertutako proxy tunel batek helmugaren WebSocket handshake-a hasteko eragotzi dezake. Bereizi proxy konexioaren eta autentifikazioaren frogak helmugaren HTTP upgrade erantzunetik eta ondorengo WebSocket trafikoetatik.

Konexio arrakastatsua saioaren hasiera besterik ez da. Mantendu jasotze/bidaltze ezeztatzea eta baliabideen garbiketa esplizitu aplikazioaren bizitza osoan; zirriborro honetako ezarpen-epea ez da ondorengo mezu bakoitzerako politika osoa.

Erlazionatutako artikuluak