Deji proxy-ga ClientWebSocket ka hor intaadan xiriirin
Habee proxy .NET WebSocket iyo aqoonsiga-yaasha ka hor inta aan la dejin xiriirka, kuna hay gooni aqoonsiga-yaasha hadafka.
Habee fursadaha ClientWebSocket ka hor intaadan wicin ConnectAsync. Marka hore xiriirka bilaabid dabadeed proxiga u yeelid aad bay u daahday handshake-kaas.
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);
Cinwaannada iyo doorsoomayaasha koontada waa tusaale. Meelaha magacyada loo baahan yahay waxaa ka mid ah System.Net, System.Net.WebSockets iyo System.Threading. Isticmaal nooca aqoonsiga-yaasha iyo habka xaqiijinta ee ay taageerto runtime, platform iyo adeegga proxy ee geyntaada.
Aqoonsiga-yaasha WebProxy waxaa iska leh proxiga. ClientWebSocketOptions waxay sidoo kale leedahay hanti Credentials gooni ah oo loogu talagalay xaqiijinta server-ka WebSocket. Midka u yeelid si otomaatig ah uma qanciyo dhinaca kale.
Xiriir WebSocket oo ammaan ah, tunnel proxy oo la diiday wuxuu ka hor istaagi karaa handshake-ka WebSocket ee hadafka inuu bilaabmo. Kala sooc caddaynta xiriirka iyo xaqiijinta proxiga iyo jawaabta HTTP upgrade ee hadafka iyo taraafikada WebSocket ee dambe.
Xiriir guuleystay waa kaliya bilowga kalfadhiyada. Hayso baajinta helista/dirista iyo nadiifinta kheyraadka oo cad inta ay nooshahay barnaamijka; waqtiga dejinta ee qoraalkan ma aha siyaasad buuxda fariin kasta oo xigta.