Deji proxy-ga macmiilka ASP.NET Core SignalR ka hor bilowga
Ku habee macmiilka ASP.NET Core SignalR iyada oo loo marayo HttpConnectionOptions si wada-hadalkiisa iyo gaadiidka la doortay ay u leeyihiin jidka loogu talagalay.
Ka hor inta aanad bilaabin macmiilka ASP.NET Core SignalR, habee xulashooyinka isku xirka:
var connection = new HubConnectionBuilder()
.WithUrl("https://events.example/hub", options =>
{
options.Proxy = new WebProxy("http://proxy.example:8080");
})
.Build();
Qaybtan waxay isticmaashaa macmiilka casriga ah ee SignalR iyo System.Net. Maamul connection intii lagu jiray mishiinka nololeed ee async ee barnaamijka; hay URL-ga hub-ka oo ah halka loo socdo. Tijaabo hub dadweyne oo la ogolaaday oo aan la hayn aqoonsiga proxy oo la habeeyay, liiska proxy-ga HTTP waxay bixisaa dhexdhexaadiyeyaal HTTP oo suurtagal ah.
| Habaynta gaadiidka | Halka proxy-gu khuseeyo |
|---|---|
| Dhaqanka isku xirka ee caadiga ah | HttpConnectionOptions.Proxy waxay doorataa dhexdhexaadiyaha; gaadiidka WebSocket ee caadiga ah ee .NET 8 ayaa sidoo kale u qoondeeya ClientWebSocketOptions |
HttpMessageHandlerFactory | Waxay habeeyaa maaraynta HTTP, ma aha isku xirka WebSocket |
Mid la bixiyay WebSocketFactory | waxay leedahay dhaqankiisa abuurista waana inuu ku dhaqmo jidka loo baahan yahay |
Wada-hadal guulaysatay ma caddaynayso in tunnel-ka WebSocket ee dambe la aqbalay. Haddii WebSocketFactory gaar ah uu isticmaalo .NET ClientWebSocket, habee proxy-ga socket-kaas ka hor inta aanad isku xirin. Akhri ogaanshaha gaadiidka tallaabada ugu dambeysay ee dhammaatay oo sidoo kale baadh gaadiid kasta oo keyd ah oo ula kac ah.
Tusaalooyinka hore ee ASP.NET SignalR ee Connection.Proxy dejiya waxay ka tirsan yihiin jiil kale. HubConnectionBuilder, ku hay proxy-ga xulashooyinka WithUrl gaadiidka kale halkii aad ka habeyn lahayd codsi HTTP oo aan xiriir la lahayn.