Stilltu proxy ASP.NET Core SignalR-biðils fyrir ræsingu
Stilltu ASP.NET Core SignalR-biðil í gegnum HttpConnectionOptions svo samningaviðræður hans og valin flutningur fari þá leið sem ætlað er.
Áður en þú ræsir ASP.NET Core SignalR-biðil skaltu stilla tengimöguleikana:
var connection = new HubConnectionBuilder()
.WithUrl("https://events.example/hub", options =>
{
options.Proxy = new WebProxy("http://proxy.example:8080");
})
.Build();
Þetta brot notar nútíma SignalR-biðilinn og System.Net. Stýrðu connection í gegnum async lífsferil forritsins; haltu hub-slóðinni sem áfangastað. Fyrir leyfilegt próf á opinberu hub án stilltra proxy-skírteina veitir HTTP-proxylistinn hugsanlega HTTP-milliliði.
| Uppsetning flutnings | Hvar proxyið gildir |
|---|---|
| Sjálfgefin tengihegðun | HttpConnectionOptions.Proxy velur milliliðinn; sjálfgefinn WebSocket-flutningur í .NET 8 úthlutar því einnig á ClientWebSocketOptions |
HttpMessageHandlerFactory | Sérsníður HTTP-meðhöndlun, ekki WebSocket-tengingar |
Eitt veitt WebSocketFactory | á sér eigin stofnunarhegðun og verður að beita tilskyldu leiðinni |
Árangursríkar samningaviðræður sanna ekki að síðari WebSocket-göngin hafi verið samþykkt. Ef sérsniðið WebSocketFactory notar .NET ClientWebSocket, stilltu proxy þess sockets fyrir tengingu. Lestu flutningsgreiningu fyrir síðasta lokna skref og skoðaðu einnig hvers kyns viljandi varaleið.
Eldri ASP.NET SignalR-dæmi sem stilla Connection.Proxy tilheyra annarri kynslóð. Með HubConnectionBuilder skaltu halda proxyinu með hinum WithUrl flutningsvalkostunum í stað þess að stilla ótengda HTTP-beiðni.